パワークエリの「列の選択」コマンドのサムネイル
AさんAさん

クエリのデータソースに指定した表の列を削除したいですが、列数が多く、削除したい列が連続していないと「列の削除」コマンドで削除するのも大変です。。
もっと楽な方法はないですか?

森田森田

その場合、Power Queryエディター上の「列の選択」コマンドを使えば良いですよ!
では、詳細を解説していきますね。

Excelステップ講座

はじめに

この記事はパワークエリの概要を把握していることが前提です。

参考記事

パワークエリの概要については、以下の記事をご参照ください。

「列の選択」の使いどころ

「列の選択」コマンドは、クエリの新規作成ステップのうち、STEP2の「取得データを整形/加工(Transform)」に該当する機能です。

「列の選択」コマンドのスコープ

クエリ内の一連の整形作業の中で、維持/削除する列を一括で選択したい場合に「列の選択」コマンドを使いましょう。

「列の選択」コマンドの使いどころ

「列の選択」コマンドを活用することで、選択した列の維持、選択しなかった列の削除を自動化できます。

基本は「列の削除」・「他の列の削除」コマンドを使い、列数が多く、削除したい列が非連続のものが多い場合に「列の選択」コマンドを使うことをがおすすめです。

参考記事

「列の削除」・「他の列の削除」コマンドの詳細は、以下の記事をご参照ください。

使用イメージ

「単価」・「最終更新日」列を削除したイメージが以下です。

「列の選択」コマンドの使用イメージ

Power Queryエディター上で不要な列を削除したステップを登録できました。
「列の選択」コマンドの場合、デフォルトのステップ名は「削除された他の列」になる(クエリ内で2つ目以降の「削除された他の列」ステップは連番が付加)。

後は、クエリ新規作成ステップのSTEP2で必要な他ステップを登録したら、STEP3を行いましょう。

これにより、クエリに記録した「列の選択」コマンドのステップを自動化できます。
「列の選択」コマンドのステップ登録後、削除対象の列名を変更すると、クエリ更新時にエラーになるため注意(対処法は、後述の「登録したステップの変更手順」を参照)。

参考記事

クエリの新規作成ステップのSTEP2に役立つ各種コマンドの詳細は「パワークエリ(Power Query)の記事一覧」を、STEP3の手順はパワークエリの概要記事をご参照ください。


ステップ登録手順

「列の選択」コマンドのステップを登録したい場合は、以下の手順となります。

「列の選択」コマンドのステップ登録手順

  1. リボン「ホーム」タブをクリック
  2. 「列の選択」の上側をクリック
  3. 削除したい列のチェックをOFF
    ※今回は「単価」・「最終更新日」列
  4. 「OK」をクリック

手順③は、デフォルトではすべての列のチェックがONの状態。

登録したステップの変更手順

「列の選択」コマンドで登録したステップの維持/削除する列を後から変更する場合、以下の手順となります。

「列の選択」コマンドのステップ変更手順

  1. 「削除された他の列」ステップの歯車マークをクリック
  2. 削除したい列のチェックをOFF
    ※削除せずに残したい列のチェックをON
  3. 「OK」をクリック

手順①のステップ名は、「列の選択」コマンドのデフォルトの名前(自身でリネームしている場合は別表記)。
手順①はステップ名をダブルクリックでもOK。
手順①で起動した「列の選択」ダイアログは、ステップ登録時の選択列がチェックONの状態。

サンプルファイルで練習しよう!

可能であれば、以下のサンプルファイルをダウンロードして、実際に操作練習をしてみてください。

サンプルファイル_PowerQueryデータ整形_列の選択.xlsx

サンプルファイルのダウンロードには無料メルマガに登録いただく必要があります(上記リンクから登録フォームへ遷移します)。

ブックを開いたら、「商品マスタ(列の選択)」クエリを編集(Power Queryエディター起動)し、次の手順を実施してください(今までの解説のまとめです)。
ブック起動時、「セキュリティの警告」メッセージが表示された場合は「コンテンツの有効化」をクリック。

  1. リボン「ホーム」タブをクリック
  2. 「列の選択」の上側をクリック
  3. 削除したい列のチェックをOFF
    ※今回は「単価」・「最終更新日」列
  4. 「OK」をクリック

本記事の解説と同じ結果になればOKです!

さいごに

いかがでしたでしょうか?

「列の選択」コマンドは、選択した列の維持、選択しなかった列の削除を自動化できます。

列数が多く、削除したい列が非連続の場合に活用すると効率的ですよ!

なお、パワークエリの各種テクニックは、私の拙著でも体系的に解説していますので、こちらも参考にしてみてください。


また、よりコアな情報を発信していくために「公式LINE」を開始しましたので、ご興味があれば以下バナーから友だち追加をお願いします!
特典として、Excelワークシート関数一覧(計22スライド)やExcelショートカットキー一覧(計25スライド)等をプレゼント!

森田貢士の公式LINEへの友だち追加告知用バナー

ご参考になれば幸いですm(_ _)m

森田森田

「列の選択」コマンドに慣れたら、余計な列の削除に役立つ他のコマンドもセットで覚えることをおすすめします。
具体的には、選択した列を削除できる「列の削除」コマンド、選択した列以外を削除できる「他の列の削除」コマンドです。
結果は同じでも、対象の列の選択効率を考慮してコマンドの使い分けができると、クエリ作成時の生産性が上がりますよ!