複数ファイルの結合

ファイルの結合は、パワークエリの中で特に便利な機能です。

他の機能が使いこなせなくてもとりあえずこれだけ覚えておいても実務で役に立つことは多いと思います

この記事では、よく使うCSVファイルとエクセルファイルの取込み方について紹介します。

CSVファイルをフォルダから読み込む

「 データ 」タブの「 データの取得 」「 ファイルから 」を選択し、「 フォルダーから 」をクリックします

複数のCSVファイルが入ったフォルダを選択し、「開く」をクリックします

「結合」の「データの結合と変換」をクリックします

「OK」をクリックします

ヘルパークエリが作成されて、csvデータが結合されました

参考

取込データに文字化けが発生してしまった場合は、ファイルの結合時に「932:日本語(シフトJIS)」や「1200:Unicode」など正しい文字コードを選択することで解決します

ヘルパークエリはフォルダからデータ取得をすると自動作成されるクエリです

初心者のうちはヘルパークエリを編集することはないので、一旦、無視するかフォルダを折りたたんで隠しておきます

よって、「その他クエリ」グループにあるクエリをデータ整形や出力に使用します

エクセルファイルをフォルダから読み込む

CSVと同様に「ファイルから」「フォルダから」をクリックします

複数のエクセルファイルが入ったフォルダを選択し、「開く」をクリックします

「結合」の「データの結合と変換」をクリックします

シート名(サンプルでは販売データ)を選択して、「OK」をクリックします

参考

フォルダ内の取込ファイルは原則1シートだけにして、シート名は全て統一しておきます

このサンプルであれば「フォルダ内の販売データという名前のシートからデータを取得せよ」というクエリが自動生成されるので、シート名が違うとその条件から弾かれてしまいます

また、シートは一つしかないのに、複数のデータの候補が表示されることがあります

これはファイル内でテーブルが作成されていたり、セル範囲に名前がつけられてる場合に発生します

対象の「シート」を選択するか、元データ側で「テーブル」や「セル範囲の名前」を削除することで解決することができます

テーブルを削除

セル範囲の名前を削除

ヘルパークエリが自動作成されて、エクセルデータがすべて結合されました

複数シートのエクセルをフォルダから取り込む

フォルダから取り込む際、元になるエクセルファイルのシート数は1シートにしておくのが原則です

しかし、都度シートを削除するのが面倒くさい場合は、工夫することで解決することもできます

サンプルでは、4月・5月のデータがひとつのファイルにまとまっていた場合で試してみます

取込みまでは先ほど同様の手順ですが、こんどはエラーが発生しました

「サンプルファイル」クエリのステップを覗いてみると、ナビゲーションステップ以下でItemを「販売データ4月」に限定していることが悪さをしていそうです

ということで、とりあえずこの2つのステップを削除してみます

さらに「Item」「Kind」「Hidden」の3列を削除します

Date列のTableを「展開」します

4月と5月シートのデータを取得することができました

結合されたクエリで、別エラーがでていますが「変更された型」のステップを削除することで解決します

4月と5月、別ファイルの6月のデータを結合することができました

コメント