フォルダーに含まれていている複数の Excel ブックに含まれるテーブルを結合したいとき、テーブル名が同じであればフォルダーを指定して中身を展開するだけで比較的容易にテーブルを結合できます。
しかし実務では、処理ごとにテーブルが作成され、そのテーブル名がファイルごとに異なることはよくあります。 そんなとき、どうやって複数のテーブルを結合するのか、その一例を書いておきます。
ここでは、C ドライブにある [SampleData] というフォルダーに、現在 3 つの Excel ブックが含まれていて、それぞれのブックには列構造は同じだけれど名前の違うテーブルがあります。このテーブルを結合して 1 つのテーブルとします。

1. リボンの [データ] タブの [データの取得と変換] グループの [データの取得] をクリックし、[ファイルから] - [フォルダーから] をクリックします。

2. [参照] ダイアログ ボックスでファイルが格納されているフォルダーを選択して [開く] をクリックします。

3. フォルダー内のコンテンツが表示されているウィンドウで [データの変換] をクリックします。

4. Power Query エディターが起動し、指定したフォルダー内のコンテンツが一覧で表示されます。

5. それぞれのファイルに含まれているワークブックの構造情報を取得するために、列を作成します。リボンの [列の追加] タブの [全般] グループの [カスタム列] をクリックします。

6. [新しい列名] に作成する列の名前を入力し、[カスタム列の式] に「= each Excel.Workbook([Content])」と指定して [OK] をクリックします。

7. 列が作成され、ファイルの中にあるシートやテーブルの一覧が含まれる Table が表示されます。 列名のところに表示されている展開ボタンをクリックします。

8. [Name]、[Data]、[Kind] のチェックをオンにして、[元の列名をプレフィックスとして使用します] をオフにして [OK] をクリックします。

9. ファイルの中に含まれているシートやテーブルといったオブジェクトの種類 ([Kind]) を表示する列などが追加されます。 [Name.1] は名前を確認するため、[Data] はあとでデータが格納されているテーブルの内容を展開するため、[Kind] はこのあとテーブル オブジェクトだけを抽出するために追加 (展開) しています。

10. [Kind] 列のフィルター ボタンをクリックして [Table] のみチェックをオンにして [OK] をクリックします。

11.テーブル オブジェクトだけが抽出されます。 [Data] 列の展開ボタンをクリックします。

12. 結合後のテーブルに必要な列 (ここではすべて) のチェックをオンにして、[元の列名をプレフィックスとして使用します] をオフにして [OK] をクリックします。

13. 各ファイルに含まれているテーブル オブジェクトの中身 (データ) が展開されます。

14. (必要なら) [日付] 列のデータ型を [日付] に変更します。

15. (必要なら) ワークシートに読み込むときにデータの順序を指定したい場合は並べ替えを実行します。 ここでは [日付] 列の昇順にしています。

16. 不要な列は削除します。 ここでは、テーブルの [名前] 列と [日付] 列以外は削除しています。

17. リボンの [ホーム] タブの [閉じる] グループの [閉じて読み込む] をクリックします。 既存のシートに読み込む場合は [閉じて次に読み込む] からどうぞ。

18. フォルダー内のファイルに含まれる複数の (名前の異なる) テーブルが 1 つのテーブルに結合され、読み込まれます。

ここまでの手順で指定したフォルダーにファイルを追加します。 ファイルに含まれるテーブルは、ほかのテーブルと列構造が同じで、テーブル名は「Table0810」です。

19. データを読み込んだ Excel ブックで、テーブルを選択して、リボンの [テーブル デザイン] タブの [外部のテーブル データ] グループの [更新] をクリックします。

20. フォルダーに追加したテーブルのデータが読み込まれて、表示されていることが確認できます。

Power Query を使うと、ファイルの中身を構造として確認したり扱ったりすることができます。
ワークシート上では、目で見て種別を判断して扱っていたデータも、Power Query を介すことで構造的に分解できるようになり、今回のようなテーブル オブジェクトだけを対象に処理をする、といったことができます。 お試しください。
石田 かのこ
営業時間:平日9:00~18:00