Free Trial

ナレッジベース

エキスパートから学ぶ。

動的入力ツールを使用して複数のエクセルシートを入力する方法

Community_Admin
Alteryx
Alteryx
Created

あなたのスプレッドシートに同じ構造の複数のシートがあると仮定して、一度でモジュールに複数のシートを読込みたいとします。  まず最初に浮かぶ解決策としては、シートごとにひとつの入力ツールを使い、ユニオンツールを使って全てのデータを融合するという方法です。  この場合にお勧めの代替手段は、動的入力ツールの使用です。

この例では、5つの州の人口統計データを用意しました。1つの州のデータが1つのExcelファイルの5つのシートにそれぞれ存在しています。  このシナリオでは、5つのシートのうち3つのシートのみ(Alaska、Arizona、California)からデータを入力したいと考えています。

excelinput.png

テキスト入力ツールを使用して、3つのシートの名前を特定できます。次の画像をご覧ください。  次に動的入力ツールに接続します。動的入力ツールがインポートする「ファイル/テーブル名」を更新する手段として、テキスト入力ツールで特定したシート名を使うように設定しています。

excelworkflow.png

 

 

 

exceltextinput.png

 


動的入力ツールの設定

入力ツール設定から、Excelファイルを閲覧し、シートまたはタブの1つを選択します。この選択がプレスホルダーの役割をします。  テーブルまたはクエリの「Modify SQL Query」のラジオボタンをクリックし、次に設定ウィンドウの右側で「追加」のドロップダウンボタンをクリックし、「特定の文字列を置き換える」というオプションを選択します。

 

exceladdquery.png

 

ポップアップしてくるモジュラーウィンドウには、置換するテキストの下にSELECT * FROM `Alabama$` という文があるはずです。また、置換フィールドの下にはテキスト入力ツールからのフィールドが追加されるはずです。 

 

replacestring.png

 

モジュールが実行されると、‘Alabama$’ テキストはテキスト入力ツールで特定されたテーブル名に置き換えられます。


DynamicInputExcel.png


では、「データソースのリストを読み込む」のラジオボタンを選択して、「フィールド」選択ドロップダウンでテキスト入力ツールで作成されたフィールド名を選択し(シート名がタイプされています)、「アクション」にはファイル/テーブル名を変更 を設定します。



readlistexcel.png

モジュールを実行した後、3つの異なるシートからのレコードが閲覧のテーブルビューに追加されていることが分かるでしょう。  このプロセスを利用する優れたオプションは、オプション5の「ファイル名をフィールドとして出力する」です。これにより、完全なファイルパスまたはファイル名をそれぞれのレコードのフィールドとして加えることができます。  すばやくグループ分けし、ソースとなっているシートにしたがってデータを整理できる優れた手段です。


exceloutput.png

添付