ファイルの結合の概要

このPower Query、同じスキーマを持つ複数のファイルを 1 つの論理テーブルに結合できます。

この機能は、同じフォルダー内のすべてのファイルを結合する場合に便利です。 たとえば、会社のすべての購買発注書を含む月次ファイルを含むフォルダーがある場合、これらのファイルを組み合わせて注文を 1 つのビューに統合できます。

ファイルは、次のようなさまざまなソースから取得できます (ただし、これらに限定されるではありません)。

  • ローカル フォルダー
  • SharePoint サイト
  • Azure BLOB ストレージ
  • Azure Data Lake Storage (Gen1 と Gen2)

これらのソースを操作すると、同じテーブル スキーマ (一般にファイル システム ビュー と呼ばれます) が 共有されているのに気付くはずです。 次のスクリーンショットは、ファイル システム ビューの例を示しています。

ファイル システム ビュー。

ファイル システム ビューの [コンテンツ ] 列には、各ファイルのバイナリ表現が含まれている。

注意

使用可能なフィールドを使用して、ファイル システム ビュー内のファイルの一覧をフィルター処理できます。 このビューをフィルター処理して、結合する必要があるファイルのみを表示するには、たとえば、拡張やフォルダー パス などのフィールドをフィルター処理 します。 詳細については、「 フォルダー」を参照してください。

[コンテンツ] 列の [バイナリ] 値を選択すると、その特定のファイルへの一連のナビゲーション [ ] ステップが自動的に作成されます。 Power Query、Text/CSV、Excel、JSON、XML など、使用可能なコネクタのいずれかを使用してバイナリの解釈を試みる必要があります。

ファイルの結合は、次の段階で行います。

[テーブルのプレビュー]

前述のコネクタを使用してデータ ソースに接続すると、テーブル プレビューが開きます。 フォルダー内のすべてのファイルを結合する必要がある場合は、画面の右下隅にある[結合] を選択します。

[結合] オプションを使用したテーブルプレビュー。

または、[データの変換]を選択して Power Query エディター にアクセスし、ファイルの一覧のサブセットを作成することもできます (たとえば、フォルダー パス列のフィルターを使用して、特定のサブフォルダーのファイルのみを含めます)。 次に、[コンテンツ] 列のバイナリを含む列を選択し、次のいずれかを選択して、ファイルを結合します。

  • [ ホーム] タブの [ 結合] グループの [ファイルの結合] コマンド

    [ホーム] タブの [ファイルの結合] コマンド。

  • バイナリ 値を含 む列の列ヘッダーの [ファイルの結合] [ ] アイコン。

    列ヘッダーの [ファイルの結合] アイコン。

[ファイルの結合] ダイアログ ボックス

[ファイルの結合] または [ファイル****の結合] コマンド を選択すると、[ファイルの結合] ダイアログ ボックスが開き、次の処理が行われます。

  1. Power Queryファイルの例 (既定では、一覧の最初のファイル) を分析し、そのファイルを開く場合に使用する適切なファイル コネクタを決定します。
  2. ダイアログ ボックスには、そのサンプル ファイルに直接接続する場合とまったく同じファイル コネクタ エクスペリエンスが表示されます。
    • サンプル ファイルに別のファイルを使用する場合は、[ファイルの例] ドロップダウン メニューから選択 できます。
    • 省略可能: [エラーのあるファイル をスキップ] を 選択すると、エラーが発生したファイルを最終的な出力から除外できます。

次の図では、Power Query は、最初のファイルに .csv ファイル拡張子が付けられているので 、Text/CSV コネクタを使用してファイルを解釈しています。

[ファイルの結合] ダイアログ ボックス。

結合されたファイルの出力

ファイルの 結合プロセスが 完了すると、次Power Queryが自動的に実行されます。

  1. 1 つのファイルに必要なすべての抽出手順を実行するクエリの例を作成します。 [ファイルの結合] ダイアログ ボックスでサンプル ファイルとして選択された ファイルが 使用されます。

    この例のクエリには、[クエリ ] ペインに変換 サンプル ファイルという名前が付 きます。

  2. サンプル クエリへのファイル/バイナリ入力をパラメーター化する関数クエリを作成します。 サンプル クエリと関数クエリがリンクされ、サンプル クエリに対する変更が関数クエリに反映されます。

    これらのクエリは、[ヘルパー クエリ] グループに一覧表示 されます。

  3. 入力バイナリ (フォルダー クエリなど) を使用して元のクエリに関数クエリを適用して、各行のバイナリ入力に対する関数クエリを適用し、結果のデータ抽出を上位の列として展開します。

  4. プレフィックス Transform ファイルを含む新しいグループを作成し、最初のクエリをサフィックスとして作成し、これらの結合されたファイルをそのグループ内に作成するために使用されるすべてのコンポーネントを整理します。

    結合されたファイルの出力。

ファイルの種類と構造が同じ (同じ列を含む) 限り、特定のフォルダー内のすべてのファイルを簡単に結合できます。 また、自動的に生成されたサンプル クエリを変更することで、追加の変換または抽出手順を適用することもできます。追加の関数クエリ ステップの変更や作成について心配する必要はありません。

注意

サンプル クエリ内の手順を変更して、クエリ内の各バイナリに適用される関数を変更できます。 サンプル クエリは関数にリンクされます。そのため、サンプル クエリに加えた変更は関数クエリに反映されます。

変更が列名または列データ型に影響する場合は、出力クエリの最後の手順を確認してください。 [列 の型の変更 ] ステップを追加すると、テーブルを視覚化することを妨げるステップ レベルのエラーが発生する可能性があります。 詳細については、「 エラーの処理」を参照してください。

こちらもご覧ください

CSV ファイルを結合する