月別の売り上げデータを管理するとき、同じフォーマットを使ってシートごとに分けているパターンは多いだろう。それを手作業で1つのシートにまとめようとすると、一つひとつコピー&ペーストしていく必要があり、時間がかかる。また手作業の場合は1行ずれて上のデータを上書きしてしまう、といった人的ミスが発生する可能性もある。
まず、複数シートに分かれているブックを、新しいブックの1つのシートに取り込むためにPowerQueryエディターに取り込む手順を紹介する。新規のブックを開いて、「データ」タブの「データの取得」からファイルを指定する。
次に、PowerQueryエディター上で不要なデータを削除したり表の形を整えたりなど、加工を施す。
[caption id="attachment_53246" align="aligncenter" width="600"]

ウインドウ右にあるクエリの設定から名前を変更する。最終的にはシート名になるので、拡張子は不要[/caption]
[caption id="attachment_53247" align="aligncenter" width="600"]

ここで必要なのは「Data」という列だけなので、「Data」部分をクリックして列を指定し、メニューから「列の削除」-「他の列の削除」をクリック[/caption]
[caption id="attachment_53248" align="aligncenter" width="600"]

「Data」列だけが残った[/caption]
もちろん1列ずつ選択して「列の削除」をしてもよいが、残すのが1列ならこの方法でそれ以外の列を一気に削除した方が効率的だ。
[caption id="attachment_53249" align="aligncenter" width="600"]

「Data」列の右端にあるボタンをクリックし、「OK」をクリックする[/caption]
[caption id="attachment_53250" align="aligncenter" width="600"]

各シートのデータが統合された[/caption]
上記画面は、ウインドウ右にあった「クエリの設定」は「×」で閉じた状態。「クエリの設定」を再度開きたい場合は「表示」-「クエリの設定」をクリックすればよい。
この表で項目にしたいのは、1行目の「店舗名」「梅田店」「心斎橋店」…という部
分。ここを項目にするための便利なメニューがある。
[caption id="attachment_53251" align="aligncenter" width="600"]

メニューから「1行目をヘッダーとして使用」をクリック[/caption]
[caption id="attachment_53252" align="aligncenter" width="600"]

これで項目名が指定できた[/caption]
ただし、各シートにも同じように項目行がある。この項目行は不要だが、シート分だけ行を指定して削除するのは手間がかかる。ここでも時短できるテクニックを使おう。
[caption id="attachment_53253" align="aligncenter" width="600"]

「店舗名」の右端のフィルターボタンをクリックし、「店舗名」のチェックを外す[/caption]
[caption id="attachment_53254" align="aligncenter" width="600"]

これで2列目以降も項目行が非表示となった[/caption]
PowerQueryエディターを閉じてデータを取り込む
ここまでできれば、あとはPowerQueryエディターを閉じてエクセルにデータを取り込めばよい。
[caption id="attachment_53255" align="aligncenter" width="600"]

メニューから「閉じて読み込む」をクリックする[/caption]
[caption id="attachment_53256" align="aligncenter" width="600"]

テーブルとなってエクセルに取り込まれた。PowerQueryエディターで付けた名前がシート名となる[/caption]
このようにパワークエリを使えば、別シートになっているデータを簡単に結合できる。さらに、複数のブックにある表を1つの表に集約したり、月次で更新する表を追加、更新したりするのも容易だ。
【ダウンロード】
「時短エクセル」 「パワークエリ」で複数シートを1つにまとめる のお試しファイルのダウンロードはこちらから(Excelファイル2つ)
売上データ2023.xlsx
売上データ2023_結合後.xlsx
※解説用画面はWindows 11上でMicrosoft 365のExcelを使用。一部メニュー名などが異なる場合がある