Excel PowerQuery ステップの挿入・切り離し

Microsoft Excel

スポンサーリンク

はじめに

ExcelのPowerQueryでは、処理のカタマリを「クエリ」と呼ぶ。
そしてクエリ中で行う個別の処理を「ステップ」として記録している。

PowerQuery エディターの基礎

さて、クエリ中にステップ01~10まであるとして、ステップ01~05とステップ06~10を別々のクエリに切り離したいとかいうことが、時々ある。

例として次のような場合だ。

  • 単純に長すぎるから区切りたい
  • ステップ01~05までは変更可能性がほぼ無く確定で、ステップ06~10の方を主に変更していきたい
  • ステップ05の後に処理を追加挿入したいけど、後ステップへの影響が心配だからステップ06以降を退避させておきたい
  • ステップ01~05を基本部分として、そこからステップ06~10、ステップ11~20、ステップ21~35が派生するなど、処理の枝分かれを作りたい。

今回は、そういう場合のステップの切り離し方などについて扱う。

前のステップの抽出

下図のように、クエリ「Mainクエリ」中にステップがある例で、「前ステップ004」までは(「後ステップ001」以降は)別ステップとして切り離したいとする。

「後ステップ001」以降を切り離すということで、その「後ステップ001」ステップを右クリックして「前のステップの抽出」とする。

切り離したうち、前のステップの方に名前を付ける画面が出てくるので、名前を入力しよう。
ここでは「00前段階クエリ」と入力する。

結果として、切り離したうち

前のステップの方が「00前段階クエリ」という新しい名前で残り、
後のステップの方が「Mainクエリ」と元の名前で残る。

私はどちらかというと、後のステップの方に新しい名前を付けたいことが多いんだけど、前のステップが新しい名前になるというこの仕様にけっこう戸惑う。

ソース

さて、切り離されたうち後のステップである「Mainクエリ」について、一番上のステップは「ソース」となっている。

このステップ名をクリックすると、数式バーに
= #”00前段階クエリ”
と表示される。

前のステップである「00前段階クエリ」をソース=データ源とし、そこから処理を引継いでいるということだ。

「詳細エディター」を覗いても、最初に
ソース = #”00前段階クエリ”
とあるのが確認できる。

Excel PowerQuery ソースコードの詳細エディターについて

後にステップの挿入

「前のステップの抽出」の他に「後にステップの挿入」というのもある。
私はあまり使わないけど。

ステップを右クリックして「後にステップの挿入」としてみる。

クエリが切り離されたりはせず、「カスタム1」というステップが後ろに挿入される。
この「カスタム1」は、何の処理も書かれていない完全な空き箱ステップだ。

この「カスタム1」にカーソルを置いたまま、例えば並べ替え処理をしてみると、「カスタム1」はそのまま残り、後に並べ替えのステップが挿入される。

こういう風に不要なステップが残るので、私はあまり使わないが、ステップどうしの間に区切り・目印を入れたいとかいう場合に使うと良いのかと思う。

あるいは上級的な用途なら、この挿入したカスタムステップの中に、詳細エディターを使って自由に処理を書き込むとかいうことにも使えるだろう。

スポンサーリンク