Power Query(パーワークエリ)は最近のExcelの標準機能として利用できます。Excelの機能ということで、使いながら覚えようとしたとき、最初に戸惑うことがいくつかあります。以下、簡単な事例で、Power Queryを初めて操作するときに知っておくと良いと思ったことの備忘録。
使用のExcelは「Microsoft® Excel® for Microsoft 365 MSO」。
先に、Power Queryを初めて操作するときに知っておくと良いポイントをあげると次のとおり。
- Excelに「テーブル」という機能があることの理解(とりあえず、存在そのものを理解)。
- 同じファイル内の元データのシートは「テーブル」に変換される。
- クエリの名前は、初期設定のまま利用しない。意図してつける。
- クエリが設定された表を選択すると、Excelの画面上部に「クエリ」タブが表示される
- Power Queryの編集画面では、「元に戻す」がない。
(設定を誤った時は、「破棄して閉じる」か、Excelの画面で「元に戻す」が可能。編集画面を起動する前まで一括で戻り、編集画面中の個々の作業は戻せない) - なお、Power Queryの編集画面で、「閉じて読み込む」はファイルの保存ではない。アイコンから保存するような印象持つかもしれないが、表記どおり編集画面を閉じて読み込む。
これらのポイントを含め、簡単な事例で以下説明。
内容:
事例のアウトプットイメージ
次のように「購買履歴」というシートがあり、データ更新の都度、C列とD列を削除している業務の自動化を想定。
実施手順
元データの取り込み
① 元データの範囲(タイトル行を含む)を選択し、②「データ」タブのクリック、③「テーブルまたは範囲から」をクリックする。
なお、データ範囲は列で選択すると、テーブルで余分な行が増えるため範囲での選択が良い。
(事例では、$A:$E ではなく、$A$1:$E$2000とする)
テーブルの作成
テーブルの作成画面が表示される。確認し、「先頭行をテーブルの見出しとして使用する」にチェックを入れて、「OK」をクリック。
「Power Query エディター」が起動する(画面の見方)
Power Queryの編集画面として「Power Query エディター」が起動する。
画面上部のメニュー以外で、最初に知っておくべき箇所は5か所。
① クエリの名前が表示される。初期設定のまま利用すると、名前の誤認識で混乱することがあるので、自分が理解できる名称に変えると良い(方法は後述)。
②適用したステップ(処理の段階)が、自動で作成される。
③各ステップでの数式が表示される(数式は、使いながら覚えていく)。
④クエリの処理状況が表示される。上記②の「適用したステップ」をクリックすることで、画面が切り替わるのでイメージが持てると思う。
⑤作成したクエリが一覧表示される。なお、上記①の名前が反映される。
列を削除
「適用したステップ」で最後のステップ(事例では”変更された型”)を選択後、削除したい列を選択(CTRLキーで複数選択可)、右クリック、「列の削除」をクリックする。
削除の反映結果を確認する
削除の結果が反映され、「適用したステップ」にステップが追加される(例:削除された列)。このように、処理した結果が自動で記録される。
クエリの名前を変更する
自分がつけた名前と認識できるように、固有の名前を入力する。入力後、ENTERキーで確定できる。
以下は、クエリの名前として初期設定になっていた「テーブル1」を「アウトプット」に変更した状態(前画面と比較して確認していただければと思う)。
名前の反映結果を確認する
名前の変更を実施すると、画面右側の名称も変更されることを確認しておく。
また、「適用したステップ」のソースをクリックした時の数式では、次のような名称があることも確認する。
Excel.CurrentWorkbook(){[Name=”テーブル1”]}[Content]
この”テーブル1”の部分は、元データの範囲のテーブル名を示すもので、前述のクエリの名前であった「テーブル1」(初期表示)とは別である。この違いは使いながら覚えられると思うので、元データの情報がソースのステップにあるということだけ知っておくと良いと思う。
「閉じて読み込む」
クエリの結果を反映するために、「閉じて読み込む」をクリックする。アイコンから保存するような印象持つかもしれないが、表記どおり編集画面を閉じて読み込む機能。ファイルの保存ではない。
以上で、次のように変換される。設定完了後は、元データの追加、削除等をしても下記画面の上部中央にある「更新」をクリックすると、データが更新される。
変換結果の補足説明
テーブル名等を確認する
クエリ作成の手順は前述のとおりだが、PowerQueryの動作を確認する目的で、変換後に次の点を把握しておく。
事例では、
・新しく「アウトプット」というシート
・メニューに、「テーブルデザイン」「クエリ」の表示(表を選択時)
・テーブル名が「テーブル_アウトプット」で設定
がされている。クエリの名前で「アウトプット」とした部分が、シート名やテーブル名の一部となって既定表示される(設定後は、シート名やテーブル名の変更可)。
このように、クエリの結果が、「テーブル」で出力されていることを理解しておく。
元データもテーブル範囲に変換されていることを確認する。
- 元データのシートは、通常のセル範囲であったものが「テーブル」に変換され、セルの背景も既定で変更される。背景の書式等は変更可能だが、PowerQueryでExcelのシートは「テーブル」に変更されることも理解しておく。
ただし、同じファイル内のシートのみで、別ファイルの場合は「テーブル」に変換されない。
- 元データには、「クエリ」のメニューは表示されない。
- テーブル名は「テーブル1」といった名前が既定で作成される。この名前は前述のソースのステップにあった以下の数式の部分と一致する。
Excel.CurrentWorkbook(){[Name=”テーブル1”]}[Content]
テーブル名を変更するとデータソースエラーとなるので、PowerQueryの設定変更が必要。
設定の編集方法
編集は「Power Query エディター」で実施する
起動方法は、クエリの結果を選択している場合は、「クエリ」をクリック後、「編集」から可能。
クエリの結果を選択していない状態等、メニューに「クエリ」が表示されていない場合は、「データ」タブをクリック後、「データの取得」-「Power Query エディターを起動」をクリックする。他にも起動方法は複数あるが、とりあえずこちらを把握しておく。
設定の編集を誤った場合の対応
Power Queryの編集画面(Power Query エディター)では、「元に戻す」(Ctrl+Z、undo)がありません。
Power Query エディターで編集中に設定の誤りに気付いた場合、編集で追加された「適用したステップ」を削除は可能です。
元に戻すという点では、「ファイル」タブにある「破棄して閉じる」か、画面右上の「×」で、Power Query エディターを起動する前の状態に戻ります。
Power Query エディターで「閉じて読み込む」のクリック後は、Excelの通常画面で「元に戻す」が可能。ただし、エディター起動する前までの一括で戻り、編集画面中の個々の作業は戻せない。
そのため、クエリの設定を保存しておきたい段階でこまめに保存しておき、設定を誤って戻す時は、前述の「破棄して閉じる」かExcelの通常画面で「元に戻す」の実行。戻せない時は、ファイルを保存せずに閉じるが必要。
以上、Power Queryを使った簡単な事例説明で、初めて操作するときに知っておくと良いと思ったことの備忘録でした。Power Queryの編集画面で適当に操作してみるための最低限のポイントです。Power Queryの操作の一例なので、便利な機能や設定方法は他の情報や書籍等で確認してください。
また、Power Queryを初めて操作する方は次の記事もおすすめです。