「毎月CSVをダウンロードして、余分な行を削除して、列を整えて、集計シートに貼り付ける」——この作業を毎回手動でこなしている方は多いはずです。Power Query(パワークエリ)はその手順を一度設定すれば「更新ボタン1回」で再現できる仕組みです。コードを書かずにGUI操作だけでデータの取得・変換・読み込みを自動化できます。
Power QueryはExcel 2016以降に標準搭載されており、「データ」タブの「データの取得と変換」グループから起動します。CSV・Excelブック・Webページ・フォルダー内の複数ファイルなど幅広いデータソースに接続でき、取得から整形・集計まで一連のステップをクエリとして保存します。元データが更新されても「すべて更新」を押すだけで結果が自動的に反映されます。
本記事では、Power Queryの基本概念・起動方法・各データソースへの接続手順・主要な変換操作・複数ファイル統合・クエリ更新設定・よくあるエラー対処・MOS Excel試験の出題ポイントを体系的に解説します。
Power Queryとは何か・従来手法との違い
Power Queryは「データを取得して整形し、Excelシートに読み込む」までの手順を記録・再実行するETL(Extract / Transform / Load)ツールです。従来の「コピー→貼り付け→手作業整形」との違いを整理します。
| 観点 | 従来の手動作業 | Power Query |
|---|---|---|
| 毎月の作業時間 | データ量に比例して増加 | 更新ボタン1回(数秒~数十秒) |
| ミスのリスク | コピペミス・行削除漏れが起きやすい | ステップが固定されているため再現性が高い |
| 引き継ぎ | 手順書が必要。属人化しやすい | クエリエディターで操作を確認できる |
| スキル要件 | 手順の暗記 | GUI操作の習得(VBA不要) |
| 元データの変更対応 | 再度手作業が必要 | ステップを編集するだけで対応できる |
Power Queryの処理は「適用したステップ」パネルに一覧表示されます。各ステップを個別に編集・削除・並べ替えられるため、手順のデバッグが容易です。またクエリの処理結果は元データを上書きしません。元ファイルは保護されたまま、整形済みデータだけをシートに書き出します。
Power Queryを起動する方法
Power Queryの起動は「データ」タブから行います。Excel 2016・2019・2021・Microsoft 365のすべてに標準搭載されています。
- データタブ →「データの取得」:接続先の種類(ファイル・データベース・Web等)を選択してウィザードを開く
- データタブ →「テキストまたはCSVから」:CSVファイル専用の簡易起動ボタン
- データタブ →「既存の接続」:保存済みクエリの一覧から再利用する
- クエリと接続ウィンドウ(Ctrl+Alt+F5):ブック内のすべてのクエリを一覧表示・管理する
接続先を選ぶとPower Queryエディターが別ウィンドウで開きます。整形作業はすべてこのエディター内で行い、「閉じて読み込む」ボタンを押した時点でExcelシートにデータが書き出されます。
データソース別の接続手順
CSVファイルからデータを取得する
最も頻繁に使われる接続方法です。「データ」→「テキストまたはCSVから」でファイルを選択すると、エンコード・区切り文字・先頭行ヘッダーを確認するプレビュー画面が開きます。
- エンコード:日本語CSVはShift_JISまたはUTF-8が多い。文字化けした場合はドロップダウンで切り替える
- 区切り文字:カンマ・タブ・スペース・カスタム文字から選択
- 先頭行をヘッダーとして使用:1行目が列名の場合はオンにする(Power Queryエディターでも後から変更可能)
「データの変換」ボタンでエディターを開くか「読み込む」で即シートに書き出すか選択します。変換が必要な場合は必ず「データの変換」でエディターを開いてからステップを追加します。
Excelブックからデータを取得する
「データ」→「データの取得」→「ファイルから」→「Excelブックから」でファイルを選ぶと、ナビゲーターにブック内のシートとテーブルが一覧表示されます。テーブル(Ctrl+T で定義したテーブル)を選ぶと列名が自動で認識されます。シートを選ぶと「Sheet1$」のような形式で取得されます。
ポイント:取得元のExcelブックとは別ファイルにする必要があります。同一ブック内の別シートを参照する場合は「テーブルまたは範囲から」(シート上のテーブルまたは選択範囲を直接クエリ化)を使います。
フォルダーから複数ファイルを一括取得する
月次レポートのように同じ形式のCSV・Excelファイルが複数存在する場合、フォルダー接続で一括取込できます。「データ」→「データの取得」→「ファイルから」→「フォルダーから」でフォルダーを指定します。
- ナビゲーターにフォルダー内のファイル一覧が表示される
- 「結合」ボタンで各ファイルの同じシートまたはテーブルを縦に積み上げて取得する
- 「サンプルファイル」を1つ選ぶと、その構造を基準に全ファイルが処理される
- フォルダーに新しいファイルを追加しても、クエリ更新で自動的に取込対象に加わる
ファイル名を元に年月列を追加したい場合は、Source.Name列(ファイル名)を残したままカスタム列で加工します。「2025-04売上.csv」のようなファイル名から年月を抽出する処理もステップとして記録できます。
Power Queryエディターの画面構成
| エリア | 場所 | 役割 |
|---|---|---|
| リボン | 画面上部 | 変換・列の追加・ホーム操作のコマンド群 |
| クエリペイン | 左端 | ブック内のクエリ一覧。複数クエリを管理する |
| プレビュー(データ格子) | 中央 | 現在のステップまで処理した結果を表示する |
| 適用したステップ | 右側 | 記録された変換ステップの一覧。クリックで過去の状態を確認できる |
| 数式バー | プレビュー上部 | 各ステップのM言語コードを表示・直接編集できる |
| クエリの設定 | 右側(最上部) | クエリ名の変更と「適用したステップ」を格納するパネル |
適用したステップは処理の記録帳です。ステップを右クリックして「削除」「上へ移動」「名前の変更」ができます。途中のステップをクリックすると、その時点のデータプレビューが確認でき、問題のある変換を特定しやすくなります。ステップ名をわかりやすい日本語に変更しておくと、後から見直したときに処理の意図が明確になります。
主要な変換操作の実務パターン
列のデータ型を変換する
CSVを取り込むと全列が「テキスト型」になりがちです。数値・日付として扱いたい列は明示的に型変換します。列ヘッダー左の「型アイコン(ABC・123・📅等)」をクリックするか、列を選択して「変換」→「データ型」から変更します。
| 型アイコン | 意味 | 主な用途 |
|---|---|---|
| ABC | テキスト型 | コード・名称・住所などの文字列 |
| 1.2 | 小数点数型 | 単価・金額・割合 |
| 123 | 整数型 | 個数・件数・順位 |
| 📅 | 日付型 | 受注日・納期・生年月日 |
| 🕐 | 日時型 | タイムスタンプ・ログ日時 |
| True/False | 論理型 | フラグ・チェック項目 |
注意点:型変換が失敗した値は「Error」と表示されます。エラーを右クリック→「エラーの削除」またはステップ前の値を確認して不正値を事前に処理します。日付の場合は「2025/4/1」「2025-04-01」「20250401」など形式の統一が必要です。
不要な行・列を削除する
レポートの先頭に説明行やタイトル行がある場合は「行の削除」→「上位の行を削除する」で先頭N行を除去します。列を削除するには列ヘッダーを選択して右クリック→「削除」か、「ホーム」→「列の削除」を使います。
- 上位の行を削除:取込データの先頭にある説明文・タイトル行を除去する
- 下位の行を削除:集計行・フッター行を除去する
- 空白行の削除:「行の削除」→「空白行の削除」で一括除去できる
- 重複の削除:列を選択して「ホーム」→「行の削除」→「重複の削除」。キー列複数選択にも対応
フィルターで条件抽出する
列ヘッダー右の▼ボタンをクリックするとフィルターメニューが開きます。チェックボックスで値を絞り込むか「テキストフィルター」「数値フィルター」「日付フィルター」から条件を指定します。
実務例:「ステータス」列が「完了」のみを残す場合、▼→「完了」のみチェックを入れます。このフィルターはステップとして記録されるため、元データに新しい「完了」行が追加されても次回更新で自動的に取込まれます。
グループ化で集計する
「変換」→「グループ化」で、指定した列を軸に合計・件数・平均などを集計できます。ExcelのSUMIFSやピボットテーブルに相当する処理をクエリ内で完結させられます。
- 基本的なグループ化:グループ列(例:「部門」)と集計列(例:「金額」の合計)を1組指定する
- 詳細なグループ化:グループ列を複数指定し、集計操作を複数追加できる(例:「部門」「担当者」で件数と合計を同時に集計)
- 集計操作の種類:合計・最大・最小・平均・中央値・件数・行のカウントなど
列の分割と結合
「氏名」列を「姓」「名」に分割したり、「年」「月」「日」を「日付」に結合したりする操作もGUIで完結します。
- 列の分割:列を選択→「変換」→「列の分割」→区切り文字(スペース・カンマ等)または文字数を指定する
- 列のマージ(結合):結合したい複数列を選択(Ctrl+クリック)→「変換」→「列のマージ」→区切り文字を指定する
- カスタム列の追加:「列の追加」→「カスタム列」→数式(M言語)で任意の計算列を追加する
カスタム列でよく使う例:[単価] * [数量](売上計算)、Text.Upper([コード])(大文字統一)、Date.Year([日付])(年を取り出す)など、Mの組み込み関数を使った加工が書けます。
よくあるエラーと原因・対処法
| エラー・症状 | 主な原因 | 対処法 |
|---|---|---|
| 接続エラー(ファイルが見つからない) | 元ファイルのパスが変わった・ファイルが移動・削除された | 「データソースの設定」でパスを更新する |
| 列に「Error」が表示される | 型変換の失敗(数値列に文字列が混入等) | 型変換前にフィルターで不正値を除去、またはエラー値を「null」に置換する |
| クエリ更新後に列が増減する | 元ファイルの列構成が変わった | ステップ「型の変更」「列の削除」等を修正して新しい列構成に対応させる |
| 文字化けしてデータが読めない | CSVのエンコードが誤認識されている | ソース変更でエンコードを「65001 UTF-8」または「932 Shift_JIS」に切り替える |
| 日付型変換でエラー | 日付の書式が混在(「4/1/2025」と「2025-04-01」が混在等) | テキストのまま取得してから「テキスト変換→日付」で書式を揃えてから変換する |
| 複数ファイル統合でデータが欠ける | ファイルごとに列名や列数が異なる | サンプルファイルのステップを見直し、列選択を動的にするかファイル形式を統一する |
デバッグの基本手順:① 適用したステップを上から順にクリックしてエラーが発生したステップを特定する → ② そのステップの直前の状態でデータを確認する → ③ ステップを削除または修正して再テストする。この手順で大半のエラーは解決できます。
クエリの更新設定と自動化
Power Queryの真の価値はデータ更新の自動化です。更新方法と設定箇所を把握しておきます。
手動更新
「データ」→「すべて更新」(Ctrl+Alt+F5)でブック内の全クエリを一括更新します。特定のクエリだけ更新したい場合は「クエリと接続」ウィンドウで対象クエリを右クリック→「更新」を選びます。
ブックを開いたときに自動更新する
「クエリと接続」でクエリを右クリック→「プロパティ」を開き、「ファイルを開くときにデータを更新する」にチェックを入れます。毎朝ファイルを開くだけで最新データが反映される運用が実現します。
バックグラウンド更新の制御
同じプロパティ画面に「バックグラウンドで更新する」オプションがあります。大量データを処理するクエリは更新中にExcelを操作できますが、依存するクエリがある場合はバックグラウンド更新をオフにしないと更新順序がずれて不整合が起きることがあります。
クエリの依存関係:あるクエリの結果を別のクエリが参照している場合(参照クエリ)は、親クエリ→子クエリの順に更新する必要があります。「クエリと接続」ウィンドウで依存関係を確認し、依存クエリのバックグラウンド更新をオフにして順序通りに更新されるよう設定します。
知っておきたいPower Queryの追加機能
クエリのマージ(JOIN)
2つのクエリを共通キーで結合するのが「クエリのマージ」です。Excelで言えばVLOOKUPに相当します。「ホーム」→「クエリのマージ」で左右のクエリとキー列を指定し、結合の種類(左外部・内部・右外部等)を選択します。
- 左外部結合:左のクエリの全行を保持し、右クエリの一致行のみ取得(VLOOKUPに近い動作)
- 内部結合:両方のクエリに一致する行のみ取得
- 完全外部結合:両方の全行を取得し、一致しない箇所はnullになる
クエリの追加(縦方向の結合)
同じ列構成を持つ複数のクエリを縦に積み上げるのが「クエリの追加」です。月別シートを1つのクエリにまとめたり、本社データと支社データを統合したりするのに使います。「ホーム」→「クエリの追加」で2つ以上のクエリを選択します。
MOS Excel試験でのPower Query出題ポイント
MOS Excel 365 Associate・Expertの範囲には「データのインポートと管理」が含まれており、Power Query(Get & Transform)の操作が出題されます。MOS Excel 2019でも「外部データのインポート」として一部が範囲です。
- CSVや外部ファイルからのデータ取得:「データ」タブから接続を作成する操作手順
- データの変換と読み込み:「データの変換」でエディターを開き、整形後に「閉じて読み込む」を実行する流れ
- 接続のみで読み込む:シートに出力せずクエリとして保存し、他のクエリから参照できるようにする設定
- クエリの編集:既存クエリのステップを修正して列名変更・型変換・行削除を行う操作
- クエリのプロパティ設定:更新オプション(ファイルを開く時に更新する)を設定する手順
MOS試験 Power Query関連チェックリスト
| 確認ポイント | 操作内容 | 難易度 |
|---|---|---|
| CSVから接続を作成する | 「データ」→「テキストまたはCSVから」→ファイル選択→「データの変換」でエディターを開く | ★☆☆ |
| 列のデータ型を変更する | 型アイコンクリックまたは「変換」→「データ型」で日付・数値・テキストに変換する | ★★☆ |
| 先頭行をヘッダーとして使用する | 「ホーム」→「変換」→「1行目をヘッダーとして使用」を実行する | ★☆☆ |
| 不要な列を削除する | 列選択→右クリック「削除」または「ホーム」→「列の削除」を実行する | ★☆☆ |
| クエリを閉じてシートに読み込む | 「ホーム」→「閉じて読み込む」で出力先(テーブル・接続のみ等)を選択する | ★★☆ |
| 既存クエリを編集する | 「クエリと接続」で対象クエリを右クリック→「編集」でエディターを再表示する | ★★☆ |
| クエリ更新の設定を変更する | クエリのプロパティ画面で「ファイルを開くときに更新する」を有効化する | ★★★ |
まとめ:Power Queryで繰り返しデータ処理を一度きりの設定に変える
本記事のポイントをまとめます。
- Power Queryの役割:データの取得・変換・読み込みをGUI操作で記録し、更新ボタン1回で再現できるETLツール
- 対応データソース:CSV・Excelブック・フォルダー(複数ファイル一括)・Webなど幅広く対応
- 変換ステップは編集可能:「適用したステップ」から各操作を個別に修正・削除・追加できる
- 主要操作:データ型変換・行列削除・フィルター・グループ化・列分割結合・カスタム列追加
- 複数ファイル統合:フォルダー接続→結合で月次ファイルを自動積み上げ。新ファイル追加後も更新のみで対応
- エラー対処の基本:ステップを上から辿って発生箇所を特定し、直前の状態でデータを確認してから修正する
- MOS試験対策:データ取得・型変換・クエリ閉じ・プロパティ設定の4操作を中心に手順を反復練習する
Power Queryを一度習得すれば、これまで毎月30分かけていたデータ整形作業が更新ボタン1回に短縮されます。設定は1回の手間で済み、以後は何度でも再利用できます。まずは自分が毎回手作業でコピペしているCSVデータを1つPower Queryで接続するところから始めてみてください。VBAやマクロを使わずに自動化の効果を実感できます。
PR
たった1秒で仕事が片づくExcel自動化の教科書【改訂第3版】
Power QueryやマクロなどExcelの自動化機能を実務視点で丁寧に解説。毎回の手作業を1操作で完結させるテクニックを体系的に学べます。Power Query入門者にもわかりやすい構成です。
PR
改善Excel パフォーマンスを底上げする仕事改善・効率化テクニック
データ取得・整形・集計の効率化を中心に、Power Queryを含むExcel実務改善の手法を幅広く紹介。業務プロセスを見直しながらExcelスキルを実践的に高めたい方におすすめです。
