1. トップ
  2. 新着ニュース
  3. IT
  4. IT総合

Excelをノーコードで自動化しよう! パワークエリの教科書 第17回 グループ内の並び順を維持したままデータを並べ替える

マイナビニュース / 2024年9月2日 11時0分

インテックス列が右端にあるのは少し変な気もするので、表の左端へ移動しておこう。この操作は「列名」のドラッグで実行できる。とはいえ、列数が多いと少しだけ面倒な作業になってしまうかもしれない。そこで、右クリックメニューを使った「列の移動」も覚えておくとよい。「列名」を右クリックし、「移動」→「先頭に移動」を選択する。

インデックス列が表の左端に移動される。あとは、列名を「No.」や「ID」などに変更するだけ。これで準備は完了となる。

以降は、目的にあわせて自由に「データの並べ替え」などの処理を指定していけばよい。ここでは、「氏名カナ」の昇順に並べ替えた場合を例に話を進めていこう。「閉じて読み込む」をクリックすると……、

先ほどのデータ表がExcelに出力される。現時点では「氏名カナ」の昇順にデータが並べ替えられているため、氏名の50音順にデータが並んでいることになる。

これを“元の並び順”に戻したいときは、インデックス列の「昇順」にデータを並べ替えればよい。

このように、インデックス列を作成しておくと、データをいつでも“元の並び順”に戻すことが可能となる。通常のExcelでもよく利用されているテクニックなので、Excelに慣れている方なら「すでに知っているよ!」という方も多いだろう。

ということで、続いては、パワークエリならではの「インデックス列」の活用方法を紹介していこう。
インデックス列を応用した並べ替え

今度は、3月の売上データを「Power Query エディター」に取得した例を使って解説を進めていこう。以下の図は「3月の売上」フォルダーに保存されている31個のExcelファイルを結合して取得した例となる。

第5回の連載でも紹介したように、フォルダー内にあるファイルを結合して取得するときは、「ファイル名の文字コード順」にデータが読み込まれる仕組みになっている。このため、現時点では3月の「10日」→「11日」→「12日」→ …… →「19日」→「1日」→「20日」→「21日」→ ……、という順番でデータが取得されている。

このままでは使いづらいので、「日付」の昇順にデータを並べ替えてみよう。すると、以下の図のような結果が得られた。正しく日付順にデータが並べ替えられているが、よく見ると少し不具合が発生しているようだ。

日付順に並べ替える前は「店内飲食のデータ4件」→「テイクアウトのデータ3件」という順番で各日のデータが並んでいた。これを日付順に並べ替えると、「同じ日付」の中でデータの並び順が変化していることに気付くと思う。

この記事に関連するニュース

トピックスRSS

ランキング

複数ページをまたぐ記事です

記事の最終ページでミッション達成してください