「毎月同じCSVを開いて、不要な列を消して、書式を直して...」そんな繰り返し作業に心当たりはありませんか。Power Queryは、Excelに標準搭載されているデータ取得・変換ツールです。一度手順を記録すれば、次回からはボタンひとつで同じ処理を再現できます。本記事では、Power Queryの全体像と基本操作を初心者の方にもわかるように解説します。
Power Queryとは何か
Power Queryは、Excel 2016以降に標準搭載されているデータの取得・変換機能です。「データタブ」の中にある「データの取得」メニューから利用でき、CSVや他のExcelファイル、Webページ、データベースなど、さまざまなソースからデータを取り込んで自動的に整形できます。
従来の手作業との違い
これまでExcelでデータを処理するには、ファイルを開いて手動でコピー&ペーストし、不要な列を削除し、書式を変更するといった作業を毎回繰り返す必要がありました。Power Queryを使うと、こうした手順を一度だけ設定すれば、以降は「更新」ボタンを押すだけで同じ処理が自動的に実行されます。
たとえば、毎月基幹システムからCSVをエクスポートして、Excelに整形して貼り付けるような作業があるとします。手作業なら不要な列を消して、文字コードのズレを直して、日付の書式を揃えて...と30分かかっていたものが、Power Queryで設定しておけば「更新」ボタンを1回押すだけで30秒以内に完了します。最初の設定に少し時間がかかりますが、毎月繰り返す作業ならすぐに元が取れます。
Power Queryは、いわゆる「ETL(Extract・Transform・Load)」ツールのExcel版です。データを取得(Extract)し、変換(Transform)し、ワークシートに読み込む(Load)という3つのステップで構成されています。プログラミングの知識がなくても、マウス操作だけでデータ処理のパイプラインを構築できる点が最大の特長です。
どのバージョンのExcelで使えるか
Power QueryはExcel 2016以降に標準搭載されています。Excel 2013でも「Microsoft Power Query for Excel」というアドインをMicrosoftのサイトからダウンロードすることで利用できます。Microsoft 365(旧Office 365)のサブスクリプション版であれば常に最新機能が使えます。Excel 2010以前では利用できないため、バージョンを確認しておきましょう。
Power QueryエディターはExcel本体とは別ウィンドウで起動するため、最初は「どこから開くの?」と戸惑う方もいます。「データ」タブ → 「データの取得」→「Power Queryエディターの起動」から直接開くか、既存のクエリをダブルクリックすると開きます。
Power Queryでできる6つのこと
Power Queryは単なるデータ取り込みツールではなく、データ処理に必要な幅広い機能を備えています。以下の6つの機能を組み合わせることで、手作業を大幅に削減できます。
Excel、CSV、テキストファイルのほか、Webページやデータベースからもデータを直接取り込めます。ファイルを開いてコピー&ペーストする必要がなくなります。フォルダを指定すれば、その中にある複数ファイルを一括で読み込むことも可能です。
列の並べ替え、データ型の変更、新しい列の追加など、取り込んだデータを目的の形に変換できます。日付や数値のフォーマット統一も自動化できます。変換した内容は「適用したステップ」として記録されるので、後から確認・修正が容易です。
空白行の除去、重複の削除、エラー値の置換など、データの品質を高める処理をまとめて実行できます。手動で1行ずつ確認する手間がなくなります。文字列の前後のスペース除去(トリム)や大文字・小文字の統一なども、ボタン操作で一括処理できます。
複数のテーブルをキー列で結合(マージ)したり、同じ構造のテーブルを縦に追加(アペンド)したりできます。VLOOKUP関数では対応しきれない複雑な結合も可能です。月別に分かれたファイルを一つにまとめる作業が特に得意です。
データソースが更新されたとき、「すべて更新」ボタンを押すだけで最新データに差し替えられます。毎月のレポート作成も、元データを差し替えてワンクリックで完了します。Excelを開いた際に自動更新するよう設定することもできます。
Power Query エディターで行った操作はすべて「適用したステップ」として自動的に記録されます。あとからステップを修正・削除・並べ替えることもでき、処理内容を可視化できます。チームメンバーへの引き継ぎ時にも、どんな処理をしているか一目でわかります。
対応するデータソース一覧
Power Queryが接続できるデータソースは非常に豊富です。実務でよく使われるものを以下にまとめました。
| データソース | 具体例 | 主な用途 |
|---|---|---|
| Excelブック | .xlsx / .xls | 他部署から受け取る報告ファイルの自動取り込み |
| CSV / テキスト | .csv / .txt / .tsv | 基幹システムからのエクスポートデータ |
| フォルダ | 指定フォルダ内の全ファイル | 月別ファイルの一括統合 |
| Webページ | HTML上のテーブル | 為替レートや統計データの自動取得 |
| データベース | SQL Server / Access / MySQL | 業務システムのデータ直接参照 |
| SharePoint | SharePointリスト / ライブラリ | 社内ポータルの管理データ集計 |
| JSON / XML | .json / .xml | Web APIのレスポンスデータ |
「フォルダ」をデータソースに指定すると、そのフォルダ内にある同じ構造のファイルをすべて自動で結合できます。たとえば「売上_2026年1月.csv」「売上_2026年2月.csv」...と月ごとに分かれたファイルを、一つのテーブルに統合するといった処理が数クリックで完了します。新しい月のファイルをフォルダに追加するだけで、更新時に自動的に取り込まれます。
Power Queryの基本操作手順
Power Queryを使ったデータ処理は、大きく4つのステップで進めます。一度この流れを覚えれば、どんなデータソースでも同じ手順で処理できます。
ステップ1 データの取得
- 「データ」タブをクリック
- 「データの取得」ボタンから接続先を選択(Excel、CSV、Webなど)
- ファイルやURLを指定して「読み込み」をクリック
CSVファイルを選ぶと、文字コードやデリミタ(区切り文字)の設定画面が表示されます。日本語のCSVで文字化けが起きる場合は、ここでエンコーディングを「65001: Unicode (UTF-8)」または「932: 日本語 (シフト JIS)」に変更します。どちらを選べばいいか迷ったら、プレビュー画面で日本語がきちんと表示されている方を選んでください。
ステップ2 Power Queryエディターで変換
- 「データの変換」をクリックするとPower Queryエディターが開く
- 列の削除、名前変更、データ型の変更などを実行
- 操作はすべて右側の「適用したステップ」に自動記録される
Power Queryエディターはウィンドウ上部にリボンメニューがあり、「ホーム」「変換」「列の追加」「表示」の4タブに機能が分かれています。最初は「ホーム」タブにある「列の削除」「行の削除」「データ型の変更」だけ覚えれば、基本的な整形はほぼできます。
右側の「適用したステップ」欄には、操作のたびに自動でステップが追加されます。ステップ名をクリックするとその時点のデータ状態が確認でき、間違えたステップはクリック後に「×」で削除できます。途中の状態に戻れるので、試しながら進められるのがPower Queryの強みです。
ステップ3 ワークシートに読み込み
- 変換が終わったら「閉じて読み込む」をクリック
- Excelのワークシートにテーブルとして出力される
- 出力先は新しいシートまたは既存シートの指定セルを選択可能
「閉じて読み込む」ボタンのすぐ下にある矢印をクリックすると「閉じて次に読み込む」が選択できます。こちらを使うと、既存のシートの特定のセルに出力先を指定できます。既存の集計シートと組み合わせて使いたい場合はこちらを選んでください。
ステップ4 データの更新
- 元データが更新されたら、テーブルを右クリック →「更新」
- または「データ」タブ →「すべて更新」をクリック
- ステップ2で設定した変換処理が自動的に再実行される
Power Queryでは、データをそのまま読み込むのではなく、エディター上で不要な列の削除やフィルタリングを済ませてからワークシートに出力します。これにより、ワークシート上のデータは常に必要なものだけに整理された状態を保てます。
よく使う変換操作
Power Queryエディターには多くの変換メニューがありますが、実務で頻繁に使うのは以下の操作です。すべてマウス操作で実行でき、プログラミングは不要です。
| 操作 | 内容 | よくある使い方 |
|---|---|---|
| 列の削除 | 不要な列を選択して削除 | エクスポートデータの余分な列を除去 |
| データ型の変更 | テキスト・数値・日付などに型を指定 | 日付がテキストとして取り込まれた場合の修正 |
| フィルター | 条件に合う行だけを残す | 特定の部署や期間のデータだけ抽出 |
| 列の分割 | 区切り文字や文字数で列を分割 | 「姓名」列を「姓」と「名」に分ける |
| 値の置換 | 特定の値を別の値に一括変換 | 略称を正式名称に統一 |
| ピボット解除 | 横持ちデータを縦持ちに変換 | 月別の列をひとつの「月」列にまとめる |
| グループ化 | 指定した列でグループ化して集計 | 部署別の合計金額を算出 |
| 重複の削除 | 重複する行を自動的に除去 | マスタデータのクリーニング |
「1月」「2月」「3月」...と月が横に並んだ表は人間には読みやすいですが、ピボットテーブルやグラフの元データとしては使いにくい形式です。Power Queryの「列のピボット解除」を使えば、横持ちのデータを縦持ちに変換でき、そのまま分析に使えるテーブルが完成します。
アペンド・マージ・条件列の使い方
基本操作に慣れてきたら、ぜひ試してほしいのがデータの「結合」と「条件によって値を変える列の追加」です。この3つを覚えると、Power Queryでできることの幅が大きく広がります。
アペンド — 月別CSVを縦にまとめる
「アペンド」は、同じ列構造を持つテーブルを縦方向にくっつける操作です。毎月エクスポートされる売上CSVを1年分まとめて集計したい、という場面でよく使います。
- まず1月分のCSVファイルをPower Queryに取り込む(ここで列の整形も済ませておく)
- 「ホーム」タブ → 「クエリの追加」→「クエリを新規クエリとして追加」をクリック
- 「3つ以上のテーブル」を選んで、2月分・3月分...12月分のクエリをすべて追加する
- 「OK」を押すと、12ヶ月分のデータが縦に結合された1つのテーブルになる
なお、フォルダ接続(前述)を使えばアペンドの手順すら不要です。月別CSVを同じフォルダに入れておけば、フォルダを指定するだけで自動的に統合されます。新しい月のファイルを追加するたびにクエリの設定を変える必要もありません。
マージ — VLOOKUPより確実なテーブル結合
「マージ」は、2つのテーブルを共通のキー列で結合する操作です。Excelで言えばVLOOKUP関数に相当しますが、Power Queryのマージはいくつかの点でVLOOKUPより優れています。
- 複数列のキーで結合できる — VLOOKUPは1列でしか検索できませんが、マージなら「部署コード+社員番号」のような複合キーでも結合可能
- データ量が増えても安定 — 大量データではVLOOKUPが重くなりやすいが、Power Queryは再実行時に効率的に処理される
- 参照元の変更に強い — マスタテーブルが更新されたら「更新」ボタンで一括反映。VLOOKUPのようにセル参照がずれる心配がない
- 「ホーム」タブ → 「クエリのマージ」をクリック
- 左側に「売上データ」、右側に「顧客マスタ」クエリを設定する
- 両方のテーブルで結合に使う列(「顧客ID」など)をクリックして選択する
- 結合の種類を選ぶ(通常は「左外部結合」 — 売上データに合致する顧客名が付与される)
- OK後、結合されたテーブルが展開されるので、必要な列(「顧客名」など)を選んで表示する
条件列の追加 — 金額によって「大口/中口/小口」を自動分類
「条件列」は、特定の条件に基づいて新しい列を追加する機能です。Excelで言えばIF関数や多段ネストのIFS関数に相当しますが、Power Queryではクリック操作で設定できます。
- 「列の追加」タブ → 「条件列」をクリック
- 新しい列名を入力(例: 「顧客区分」)
- 条件を設定(「受注金額」が「100万以上」なら「大口」、「50万以上」なら「中口」、それ以外は「小口」など)
- 「OK」で条件に応じた値が入った新しい列が追加される
条件列の便利な点は、ロジックが「適用したステップ」として記録されるため、後から条件の変更が簡単なことです。Excelのシート上でIF関数を修正するより、Power Queryのダイアログで直感的に編集できます。
VBAマクロとの使い分け
Excelの自動化といえばVBAマクロが有名ですが、Power Queryとはそもそも得意分野が異なります。どちらを使うべきかは、自動化したい作業の内容によって判断しましょう。
| 比較項目 | Power Query | VBAマクロ |
|---|---|---|
| 学習コスト | 低い(マウス操作中心) | 高い(プログラミング知識が必要) |
| データ取得 | 多彩なデータソースに対応 | 自分でコードを書く必要がある |
| 処理の可読性 | ステップが一覧で見える | コードを読む必要がある |
| 更新の手軽さ | ワンクリックで再実行 | マクロを実行する操作が必要 |
| 柔軟性 | データ変換に特化 | 書式設定・印刷・メール送信なども可能 |
| 引き継ぎやすさ | 操作が視覚的でわかりやすい | コードの理解が必要で属人化しやすい |
| セキュリティ | マクロ警告が出ない | ファイル共有時にマクロ有効化が必要 |
Power Queryが向いている場面
Power Queryが本領を発揮するのは、毎回同じ構造のデータを取り込んで整形する作業です。基幹システムから月次CSVをエクスポートして集計用のExcelに整形する、複数部署からの報告ファイルを一つのテーブルに統合する、といった用途に最適です。特に「更新ボタンで最新データに差し替えられる」という仕組みが強力で、毎月の定例作業を大幅に短縮できます。
VBAが向いている場面
一方、VBAが活きるのはデータ整形以外の操作を自動化したい場面です。たとえば「データを整形したあと、特定のシートを印刷してPDFで保存する」「集計結果を担当者にメールで送る」「フォームに入力された値をもとに表のレイアウトを自動調整する」といった処理はPower Queryだけでは実現できません。VBAはExcel全体を制御できるため、こうした複雑なワークフロー自動化に向いています。
データの取り込み・整形・統合がメインの作業であればPower Queryが最適です。一方、セルの書式設定やグラフの自動生成、メール送信の自動化など、Excel全体の操作を制御したい場合はVBAが向いています。両方を組み合わせて、データ準備はPower Query、後処理はVBAという分担も効果的です。実際、Power QueryとVBAは競合ではなく補完関係にあるため、どちらか一方だけに縛られる必要はありません。
Power Queryでよくある活用パターン5選
「Power Queryを導入してみたいが、自分の業務に使えるか」と感じている方のために、実務でよく見られる活用パターンを5つ紹介します。
経理部門や営業部門でよく見られるのが、基幹システムから月ごとにエクスポートされるCSVファイルの集計です。「売上_202601.csv」「売上_202602.csv」...と12ファイルを手動で集めてコピーしていた作業が、フォルダ接続一つで解決します。新しい月のファイルをフォルダに追加するだけで、更新時に自動的に取り込まれます。年次集計が数秒で完了するため、月末・四半期末の集計作業が劇的に楽になります。
販売管理システムや在庫管理システムからエクスポートしたデータは、余分な列が含まれていたり、日付の書式が「20260101」のような形だったり、そのままでは使いにくい場合が多いです。Power Queryなら、こうした整形手順を一度設定しておけば、毎回エクスポートのたびに「更新」ボタンを押すだけで同じ整形が自動実行されます。担当者が変わっても手順が変わらないため、引き継ぎコストも下がります。
為替レートの確認、統計局や省庁のオープンデータの参照、競合他社の価格調査など、Webページ上の表をExcelに手動でコピーしている作業に使えます。Power QueryのWeb接続機能を使えば、URLを指定するだけでWebページ上のテーブルを直接取り込めます。更新するたびに最新データが反映されるため、定期的に参照するデータの管理が楽になります(ただし、サイトの構造が変わると再設定が必要です)。
1つのExcelブック内に月別・支店別・担当者別といった形でシートが分かれているファイルを集計する場面でも、Power Queryが活躍します。各シートを個別のクエリとして取り込み、アペンドで縦に結合するか、マージで横に紐付けることで、散在していたデータを一元化できます。「各シートの構造が同じ」という前提が必要ですが、定型フォーマットのファイルを集約する業務によく合います。
「入力用のExcelフォームに記入してもらったデータを、別の集計用Excelに取り込む」という業務もPower Queryで自動化できます。入力フォームのパスを設定しておけば、ファイルが更新されるたびに集計側を「更新」するだけで最新の入力データが反映されます。フォームの書式が変わらない限り、担当者が変わっても安定して動作し続けます。
導入前後の作業時間比較
Power Queryの効果を実感してもらいやすいように、「月次CSVファイルの集計作業」を例にして、導入前後の作業フローを比べてみます。
手作業の場合 — 毎月繰り返す5ステップ
| 手順 | 作業内容 | 目安時間 |
|---|---|---|
| 1 | 基幹システムからCSVをエクスポートして保存フォルダに配置する | 3分 |
| 2 | CSVをExcelで開き、文字化けを修正してから集計シートにコピー&ペースト | 8分 |
| 3 | 不要な列を手動で削除し、列名を整える | 5分 |
| 4 | 日付列の書式を「2026/01/01」に統一し、数値列の型を確認して修正 | 10分 |
| 5 | 前月データの下に追記し、集計式の参照範囲を手動で更新する | 5分 |
| 合計(毎月) | 約30分 | |
Power Query導入後 — 設定済みなら2ステップで完了
| 手順 | 作業内容 | 目安時間 |
|---|---|---|
| 1 | 基幹システムからCSVをエクスポートして所定のフォルダに保存する | 3分 |
| 2 | 集計ExcelでCtrl+Alt+F5(すべて更新)を押す | 30秒 |
| 合計(毎月) | 約3分30秒 | |
月30分 × 12ヶ月 = 年間360分(6時間)の節約になります。これは集計担当者1人の話ですが、複数の集計業務にPower Queryを展開すれば、年間の節約時間はさらに積み上がります。また、手作業のコピー&ペーストによるヒューマンエラーがなくなる点も、見えにくいですが大きなメリットです。
Power Queryの初期設定(クエリの作成)には1〜2時間かかることがありますが、毎月30分の作業を自動化するなら2ヶ月以内に元が取れる計算です。一度設定してしまえば、担当者が変わっても同じ品質で処理し続けてくれます。
注意点とトラブルシューティング
Power Queryは便利な反面、特有のトラブルが発生することもあります。よくあるケースとその対処法を知っておくと、実務での導入がスムーズになります。
ソースファイルのパスが変わると接続エラーになる
Power Queryはデータソースのファイルパス(例: C:\Users\tanaka\Documents\売上データ\202601.csv)を記憶しています。そのため、元ファイルをフォルダごと移動したり、別のPCで開いたりすると「データソースが見つかりません」というエラーが出ます。
対処法 — Power Queryエディターを開き、「ホーム」タブ → 「データソースの設定」から接続パスを更新します。チーム共有で使う場合は、データファイルをSharePointや共有ドライブに置いてパスを固定するか、「パラメータ」機能を使って基点フォルダを変数として管理すると引き継ぎが楽になります。
列名が変わるとステップが壊れる
Power Queryのステップは列名で処理対象を記憶しています。そのため、基幹システムの仕様変更などでエクスポートCSVの列名が変わると(例: 「顧客CD」→「顧客コード」)、関連するステップがエラーになります。
対処法 — エラーが出たら「適用したステップ」の中でエラーになっているステップを探し、列名を修正します。根本的な対策としては、ステップの中でまず「列の名前変更」を先に行い、以降は統一した列名で処理するよう設計しておくと、元データの列名変更の影響を受けにくくなります。
日本語の文字化け対策
CSVファイルを取り込んだときに日本語が文字化けする場合、ほとんどの原因はエンコーディング(文字コード)の設定ミスです。CSVにはUTF-8とShift-JIS(CP932)の2種類がよく使われますが、Power QueryのデフォルトはUTF-8のため、Shift-JISのファイルでは文字化けします。
対処法 — CSVを取り込む際のダイアログで「ファイルの起点」または「エンコード」の設定を変更します。文字化けする場合は「932: 日本語 (シフト JIS)」を試してください。どちらかわからない場合は、テキストエディタ(メモ帳など)でファイルを開いたときに日本語が読める方を選んでください。
データ量が多いとプレビューが遅い
Power Queryエディターのプレビューは最初の数百〜数千行しか表示しません。これはプレビュー用の表示であり、実際に「閉じて読み込む」を実行すればすべての行が処理されます。プレビューが遅くても焦る必要はなく、設定が終わったら「更新」の方が速く動作します。また、不要な列はなるべく早い段階のステップで削除しておくと、後続の処理が速くなります。
Power Queryの設定を保存し忘れた場合
Power Queryの設定(クエリ)はExcelファイル内に保存されます。Excelファイルを保存すればクエリも一緒に保存されますが、Power Queryエディターを「キャンセル」で閉じてしまうと、その回の変更は保存されません。「閉じて読み込む」または「閉じて保存する」で必ず保存操作をしてください。また、.xlsx形式ではなく.xlsb形式で保存するとファイルサイズが小さくなり、大量データを扱う場合に動作が軽くなることがあります。
M言語について知っておきたいこと
Power Queryのエディターで操作すると、裏側では「M言語」(正式名称: Power Query M formula language)というプログラミング言語でコードが自動生成されています。マウス操作だけ使う分にはM言語を意識する必要はありませんが、「存在を知っている」とトラブル対応や高度な処理がぐっと楽になります。
M言語の確認方法
Power Queryエディターの「表示」タブ → 「詳細エディター」をクリックすると、現在のクエリに対応するM言語のコードが表示されます。マウス操作で作ったステップがどんなコードになっているか確認できます。
たとえば「売上金額が100万以上の行だけに絞り込む」操作をすると、裏では次のようなコードが生成されています。
Table.SelectRows(前のステップ名, each [売上金額] >= 1000000)
読み方は「前のステップの結果から、売上金額が100万以上の行を選ぶ」という意味です。英語っぽく読むと意外とわかりやすいのがM言語の特徴です。
M言語が必要になる場面
通常の業務ではM言語を直接書く機会はほぼありません。ただし、以下のようなケースではM言語の編集が必要になることがあります。
- ファイルパスをパラメータ化して可搬性を高めたい — 他のPCでも動くようにパスを相対的に指定する場合
- エラーが発生したステップの原因を調べたい — 詳細エディターでコードを確認すると問題箇所を特定しやすい
- マウス操作では設定できない細かい条件を加えたい — 複雑な文字列処理や日付計算など
- 他の人が作ったクエリの動作を理解したい — コードを読めばどんな処理をしているか把握できる
「M言語を覚えないとPower Queryは使えない」ということはありません。マウス操作だけで実務の8割は対応できます。ただ、「詳細エディターを開いて確認してみる」という習慣を持つと、Power Queryへの理解が深まり、トラブル対応の引き出しが増えます。最初は読む程度からはじめて、徐々に慣れていくのがおすすめです。
Power Queryは「データの取得・変換・読み込み」を自動化するExcel標準機能です。VBAのようにコードを書く必要がなく、一度設定した手順はワンクリックで再現できます。アペンドやマージを組み合わせれば複雑なデータ統合も自動化でき、毎月・毎週のデータ処理に時間がかかっている方には特に効果があります。まず一つのCSVファイルの取り込みからPower Queryを試してみてください。手作業との違いをすぐに実感できるはずです。
はてなベース株式会社では、Power Queryを活用したデータ取り込みの自動化や、Excel業務全般のDXコンサルティングを提供しています。「毎月のデータ集計に時間がかかりすぎている」「複数ファイルの統合を自動化したい」「属人化したExcel業務を標準化したい」など、お気軽にご相談ください。
無料相談はこちら