こんにちは、SkillStack Lab運営者のスタックです。
毎月届く複数のCSVやExcelファイルを開き、コピーして1つの集計表へ貼り付ける作業に時間を取られていませんか。
結論から言うと、同じ形式のデータを繰り返し取得・結合・整形する業務には、Power Queryが向いています。
最初に処理手順を作れば、翌月以降は元ファイルを差し替えたり追加したりして、クエリを更新することで同じ処理を再実行できます。
一方、セルへの細かな入力制御、帳票の連続作成、ボタン操作、Outlookとの連携などは、VBAやPower Automateの方が適している場合があります。
この記事では、複数ファイルの結合、VLOOKUPの代わりになるマージ、ピボット解除、日付型の設定、行数が増える原因、更新できない場合の確認点まで、実務で使う順番に整理します。
- 毎月同じ形式のファイルをまとめる:フォルダーから結合する
- 明細へマスタ情報を追加する:クエリをマージする
- 月別に横へ並んだ表を分析する:列のピボットを解除する
- 帳票作成や細かなセル操作を自動化する:VBAなど別の方法も比較する
- Power QueryとVBAの違い
- 複数のCSV・Excelファイルを結合する手順
- マージ後に行数が増える原因と防ぎ方
- 更新エラーや属人化を防ぐ運用ルール
Power Queryとは?実務で向いている作業
Power Queryは、複数のデータソースから情報を取得し、不要な行や列の削除、データ型の変更、結合、集計などを行うためのデータ準備機能です。
Excelでは、主に「データ」タブの「データの取得と変換」から利用します。表示される名称や利用できるコネクタは、Excelのバージョン、OS、契約プランによって異なる場合があります。
Microsoft LearnでPower Queryの概要を確認する
| 比較項目 | Power Query | VBA |
|---|---|---|
| 得意な処理 | データの取得・結合・整形 | セル・シート・帳票などの操作 |
| 処理の作り方 | 画面操作を中心に手順を設定 | VBAコードを記述 |
| 翌月以降の実行 | 元データを差し替えて更新 | マクロを実行 |
| 高度な調整 | M言語を編集する場合がある | VBAコードを編集する |
| 向いている例 | CSV結合、マスタ結合、表記統一 | 帳票作成、PDF保存、入力制御 |

Power Queryは「コードを一切使わない機能」とは限りません
一般的な結合や整形は画面操作で設定できますが、すべての処理は内部的にM言語として記録されています。複雑な条件や動的な設定では、高度なエディターでM言語を調整する場合があります。
複数ファイルをフォルダーから一括結合する方法
Power Queryの代表的な用途が、同じ形式で作られた複数ファイルの一括結合です。
各支店から届く売上データや、毎月出力するCSVを1つの一覧へまとめる作業に向いています。
- 結合専用のフォルダーを作る
処理対象以外のファイルが混ざらない場所を用意します。 - 同じ構造のファイルを保存する
列名、列数、データ型、対象となるシートやテーブルの構造をそろえます。 - フォルダーを指定する
Excelの「データ」から「データの取得」「ファイルから」「フォルダーから」の順に進みます。 - 結合と変換を選ぶ
ファイル一覧を確認し、「結合と変換」または同等のメニューを選びます。 - サンプルファイルを基準に処理を設定する
不要な列の削除、見出し設定、データ型の変更などを行います。 - 結果を読み込む
問題がなければ、ワークシートまたはデータモデルへ読み込みます。 - 翌月以降はファイルを追加して更新する
同じフォルダーへ新しいファイルを保存し、クエリを更新します。

Microsoft Learnで複数ファイルの結合方法を確認する
ファイル結合で失敗しやすいポイント
- 列名が「売上」「売上額」のように統一されていない
- CSVとExcelなど、異なる種類のファイルが混ざっている
- 見出しより上にタイトルや空白行が追加されている
- 対象外の一時ファイルやバックアップファイルが混ざっている
- Excelファイル内の対象シートやテーブル構造が異なる
- 数字の列へ文字や記号が入力されている
ファイル結合では、必ずしもすべての列が完全一致していなければ読み込めないわけではありません。
ただし、構造が異なるファイルを混ぜると、意図しない列が追加されたり、値が空白になったり、変換エラーが発生したりします。社内で入力フォーマットを統一しておくことが重要です。
VLOOKUPの代わりにクエリをマージする
売上明細へ商品マスタの名称や単価を追加するときは、Power Queryの「クエリのマージ」を利用できます。
マージは、2つの表に共通する商品ID、社員番号、取引先コードなどを基準にして、必要な列を横方向へ追加する処理です。

- 2つの表をクエリとして取り込む
明細データとマスタデータをそれぞれPower Queryへ読み込みます。 - 基準となるクエリを選ぶ
商品名などを追加したい明細側のクエリを開きます。 - クエリのマージを選ぶ
「ホーム」タブなどからマージを実行します。 - 共通キーを選択する
両方の表で商品IDなどの列を選びます。複数列を使う場合は、同じ順番で指定します。 - 結合方法を選ぶ
明細側の全行を残す場合は、一般的に左外部結合を選びます。 - 必要な列だけ展開する
結合されたテーブルから、商品名や単価など必要な列を選びます。 - 行数と合計金額を確認する
マージ前後で件数や集計結果が変わっていないか確認します。
| 比較項目 | 検索関数 | Power Queryのマージ |
|---|---|---|
| 結果の反映 | 数式としてシート上で計算 | クエリ更新時に結果を作成 |
| 元データの変更 | 再計算で結果が変わる | 更新すると再取得・再変換される |
| 複数列での結合 | 補助列が必要になる場合がある | 複数のキー列を指定できる |
| 向いている場面 | シート上で結果を随時確認したい | 定型的なデータ加工を繰り返す |
マージ後に行数が増える原因
マージ後に明細の行数が増えた場合は、結合先のマスタに同じキーが複数存在していないか確認してください。
たとえば、商品マスタに商品ID「A001」が2行ある場合、明細側の「A001」1行に対して、マスタ側の2行が紐づく可能性があります。

- マスタ側のキーが一意になっているか
- マージ前後の明細行数が一致しているか
- 売上や数量などの合計が一致しているか
- 一致しなかった行に空白が発生していないか
- 全角・半角、前後の空白、データ型がそろっているか
重複行を機械的に削除する前に、同じキーが複数存在する理由も確認してください。
価格改定履歴や所属履歴など、複数行あることが正しいマスタもあります。その場合は、適用日や有効フラグを条件にして、必要な1行へ絞り込む設計が必要です。
ピボット解除で横持ちデータを縦持ちへ変換する
「商品名・4月・5月・6月」のように月が横へ並んだ表は、人が読むには分かりやすい一方、集計や分析には扱いにくい場合があります。
Power Queryの「列のピボット解除」を使うと、月別の列を「月」と「金額」の2列へまとめられます。

- 固定したい列を選ぶ
商品コード、商品名、部署名など、縦持ちにしても残す列を選びます。 - その他の列のピボット解除を実行する
月別列など、今後増える可能性がある列を縦方向へ変換します。 - 列名を変更する
「属性」を「年月」、「値」を「売上金額」など、内容が分かる名前へ変更します。 - データ型を設定する
年月、金額、数量などの型を確認します。
毎月新しい月の列が追加される表では、「月の列をすべて選ぶ」より、商品コードなどの固定列を選んで「その他の列のピボット解除」を使う方が、更新後の列追加にも対応しやすくなります。
日付の変換エラーをデータ型とロケールで防ぐ
CSVから取り込んだ日付が文字列として認識されると、年月の抽出、期間計算、ピボットテーブルでのグループ化が正しく動かないことがあります。
Power Queryでは、列見出しの左側に表示されるアイコンから、テキスト、整数、小数、日付、日時などのデータ型を指定できます。

| 症状 | 主な原因 | 確認方法 |
|---|---|---|
| 日付型へ変換するとエラーになる | 日付以外の文字が混ざっている | エラー行を抽出して元データを確認する |
| 月と日が逆になる | 地域設定の解釈が異なる | ロケールを指定して型を変更する |
| 空白がエラーになる | 空文字や特殊な記号が含まれている | 置換やトリミング後に型を設定する |
| 数字が文字列になる | 通貨記号やカンマが混ざっている | 不要文字を取り除いて数値型へ変換する |
「01/02/2026」のように地域によって月日を逆に解釈できるデータは、単に日付型へ変更するだけでは誤変換される可能性があります。
その場合は「ロケールを使用して型を変更」などの機能を使い、元データがどの地域形式で作られているかを指定してください。
Microsoft LearnでPower Queryのデータ型を確認する
Power Queryが更新できないときの確認点
最初は動いていたクエリが翌月に更新できなくなった場合、コードよりも元ファイルや保存場所の変更が原因になっていることがあります。
- 保存場所:参照しているファイルやフォルダーが移動・改名されていないか
- 列名:元データの列名が変更・削除されていないか
- ファイル構造:対象シート、テーブル、見出し行の位置が変わっていないか
- データ型:数字列へ文字や記号が混ざっていないか
- 認証情報:SharePointやWebなどへの接続権限が切れていないか
- 不要ファイル:一時ファイルや異なる形式のファイルが混ざっていないか
- 適用したステップ:途中の列削除や列名変更で参照先がなくなっていないか
出力されたテーブルへ手入力列を混ぜない
Power Queryから読み込んだ結果は、更新時に再作成されます。出力テーブルへ直接入力したメモや補足列は、更新によって消えたり、行との対応がずれたりする可能性があります。
手入力情報を残したい場合は、社員番号や商品IDなどのキーを持つ別テーブルで管理し、Power Queryでマージする方法を検討してください。
Power Queryが向かない業務
Power Queryはデータの取得と変換に強い機能ですが、Excel業務のすべてを自動化できるわけではありません。
| 自動化したい業務 | 検討したい方法 | 理由 |
|---|---|---|
| セル入力に応じて即座に処理する | 関数・VBA | Power Queryは更新を実行して結果を作るため |
| 取引先別の帳票を連続作成する | VBA | セル、シート、印刷、PDF操作に向くため |
| Web画面やメールも操作する | Power Automate | Excel以外のアプリ操作が必要なため |
| 大量ファイルやAPIを処理する | Python | Excelの外にある処理を設計しやすいため |
| 複数人で承認や履歴を管理する | SaaS | 権限、履歴、ワークフローが必要なため |
Power Query、VBA、Power Automate、Python、SaaSのどれを選ぶか迷う場合は、Excel自動化の方法と具体例を比較した記事で、業務別の判断基準を確認してください。
Power Queryを属人化させない運用ルール
画面操作だけで作ったクエリでも、作成者しか更新方法を知らなければ属人化します。
実務へ導入する場合は、少なくとも次の情報を残してください。
- クエリの目的と出力先
- 元ファイルを保存するフォルダー
- 必要な列名とファイル構造
- 更新する担当者と更新頻度
- 更新前後に確認する件数と合計値
- エラーが発生した場合の確認手順
- 処理を止めて手作業へ戻す方法
- 最終確認日と変更履歴
「削除された列1」「変更された型2」のようなステップ名が増えると、後から見た人が処理を理解しにくくなります。
重要なステップには「不要列を削除」「商品マスタを結合」など、処理内容が分かる名前を付けましょう。
本番更新の前には、テスト用ファイルを使い、行数、金額、日付範囲、重複件数などを確認してください。
Power Queryを効率よく学ぶ方法
Power Queryは、公式ドキュメントや無料記事だけでも基本操作を学べます。
一方、複数ファイルの結合やマージは、取り込むファイルの状態によって表示される画面やエラーが変わります。
私も最初は書籍を中心に学びましたが、実務に近い複雑なデータを扱った際に、画面操作と処理のつながりを理解しにくいと感じることがありました。
操作画面を見ながら学びたい人は、動画講座を使い、講師と同じ練習データを自分のExcelで動かす方法が向いています。

講座を選ぶときは、次の内容が含まれているか確認してください。
- Excelのバージョンと講座画面が大きく違わないか
- 複数ファイルのフォルダー結合を扱っているか
- 追加とマージの違いを説明しているか
- ピボット解除とデータ型を扱っているか
- 更新エラーの原因と確認方法を学べるか
- 演習用のCSVやExcelファイルが付属しているか
Excel、Power Query、ピボットテーブルなどを動画で体系的に学びたい方は、実務向けUdemyのExcel講座を比較した記事で、自分に合う講座の選び方を確認してください。
Power Queryのよくある質問
Power Queryはプログラミング不要ですか?
一般的な列削除、フィルター、追加、マージ、ピボット解除は、主に画面操作で設定できます。
ただし、処理は内部的にM言語で記録されています。画面上の機能だけで対応できない変換では、M言語を編集する場合があります。
追加とマージは何が違いますか?
追加は、同じ列構造のデータを縦方向へ積み上げる処理です。月別ファイルや支店別ファイルを1つにまとめる場合に使います。
マージは、共通のキーを使って別の表から列を横方向へ追加する処理です。売上明細へ商品名や単価を追加する場合に使います。
マージすると行数が増えるのはなぜですか?
結合先のマスタに同じキーが複数存在すると、1つの明細行へ複数のマスタ行が紐づき、結果の行数が増えることがあります。
マージ前にキーの重複を確認し、必要に応じて適用日や有効フラグで対象行を絞ってください。
元ファイルを追加すれば自動で反映されますか?
フォルダーを参照するクエリでは、同じ構造のファイルを対象フォルダーへ追加し、クエリを更新することで反映できます。
ファイル構造や列名が変わった場合は、クエリの修正が必要になることがあります。
Power QueryがあればVBAは不要ですか?
不要になるとは限りません。
データの取得・結合・整形はPower Query、セル・シート・印刷・帳票などの操作はVBAというように、処理の目的で使い分けます。
Power Queryで元データは変更されますか?
通常の取得・変換処理では、Power Query内でデータを加工し、読み込み元ファイルを直接上書きするものではありません。
ただし、出力されたテーブルは更新時に再作成されるため、結果表へ直接入力したデータが失われないよう注意してください。
まとめ|Power Queryは繰り返すデータ整形に使う

Power Queryは、同じ形式のデータを繰り返し取得・結合・整形する業務に向いています。
- 同じ構造の複数ファイルはフォルダーから結合する
- 別表から項目を追加するときはマージを使う
- マージ前後の行数と合計値を確認する
- 横持ちデータはピボット解除で縦持ちへ変換する
- 日付や数値はデータ型とロケールを確認する
- 出力テーブルへ手入力情報を混ぜない
- 更新方法とエラー時の確認手順を残す
最初から複雑な月次決算や給与データを対象にするのではなく、失敗しても元の手作業へ戻せる小さな集計から試してください。
操作画面を見ながらPower Queryを学びたい方は、Excel講座の対象レベル、演習データ、更新日、Power Queryの対応範囲を比較しましょう。
Power Queryを動画で体系的に学ぶ
