CData Excel Add-In for SASXpt の関数を使って、スプレッドシートにデータを取り込むことができます。下記の3つの手順では、次のタスクを自動化する方法について説明します:ユーザー定義の値でSAS xpt を検索し、その結果をExcel スプレッドシートに出力します。
CDATAQUERY 関数の構文は次のとおりです:
=CDATAQUERY(Query, [Connection], [Parameters], [ResultLocation]);
この関数に入力する値は以下の3つです:
- Query:取得したいSAS xpt data レコードの宣言修正を簡単な構文で記述。
-
Connection:SASXptConnection1 のような接続名、もしくは接続文字列を入力。接続文字列は、SAS xpt への接続に必要なプロパティのセミコロン区切りとなります。一般的な接続文字列は次のとおりです:
ローカルSASXpt ファイルへの接続
URI をSASXpt ファイルを格納しているフォルダに設定すると、ローカルのSASXpt ファイルに接続できます。
S3 データソースへの接続
Amazon S3 ソースに接続してSASXpt ファイルを読み込むことができます。以下のプロパティを設定して接続します:
- URI:接続するバケット内のフォルダに設定。
- AWSAccessKey:AWS アカウントのアクセスキーに設定。
- AWSSecretKey:AWS アカウントのシークレットキーに設定。
- TemporaryLocalFolder:SASXptファイルを一時的にダウンロードするために使用するフォルダへのパス、またはURI に設定。
Azure Data Lake Storage Gen2 への接続
ADLS Gen2 に接続してSASXpt ファイルを読み込むことができます。以下のプロパティを設定して接続します:
- URI:ファイルシステムの名前およびSASXpt ファイルにコンタクトするフォルダの名前に設定。
- AzureAccount:Azure Data Lake storage アカウントの名前に設定。
- AzureAccessKey:Azure Data Lake storage Gen 2 ストレージアカウントのアクセスキーに設定。
- TemporaryLocalFolder:SASXptファイルを一時的にダウンロードするために使用するフォルダへのパス、またはURI に設定。
- ResultLocation:結果のアウトプットを開始するセル。
スプレッドシートのセルをクエリのインプットとして渡す
下記の処理では、すべての関数インプットをひとつ目のカラムでオーガナイズするスプレッドシートができます。
-
関数をインプットするセルを定義します。接続インプットに加えて、Column2 のように、SAS xpt の検索に使われるフィルタ用の基準を定義する追加のインプットを入力します。
- 別のセルに、上で定義したユーザーインプットセルからセルの値を参照する関数を書きます。住所などスペースを含む可能性のある値は、シングルクオートで囲みます。
=CDATAQUERY("SELECT * FROM SampleTable_1 WHERE Column2 = '"&B2&"'","URI="&B1&";Provider=SASXpt",B3)
- フィルタを変更してデータを変更します。