目次
はじめに
今回は、サムネイル画像にあるように、ひとつの情報に対して、複数行で処理されるようなデータを1つの行に自動でまとめる方法を紹介します。
特に、kintoneのテーブルを使った場合でデータをダウンロードしたデータの変換を紹介していきます。
実装
さっそく実装していきます。
- STEP
データの準備
今回は、下図のように、例えば、ある商品を何種類かひとつのレコードで注文する、あるいは、注文されたような場合を想定しています。
こちらのkintoneのデータをダウンロードすると、下図のような形で、1回の注文に対して、複数行できてしまいます。
今回は、こちらを1行に変換していきます。
- STEP
データの取得
それでは、新規のExcelを開いて、データ>テキストまたはCSVをクリックして、kintoneからダウンロードしたデータを選択して、インポートをクリックします。
すると、下図のようになりますので、そのままデータの変換をクリックします。
これで、powerQueryエディターが立ち上がります。
- STEP
データの整形
続いて、データを整形していきます。
まずは、後々のためにデータの順序を保持しておきたいので、インデックス列というものをクリックして、データソート用の列を追加していきます。
続いて、新しい列を用意したいので、新しい列の名前となるものを作成していきます。
下図のように、Noという列を選択した状態で、列の追加>列からの列をクリックして、下図のように、結合済みという列が生成されるので、その一番上の行に例えば商品1などと入力します。
すると、上図のように自動で下のものが入力されていきます。
続けて同様に個数についても下図のように設定します。
次に、上で作った列を横並びにさせる処理をしていきます。
すると下図のように、商品ごとに列が分割されます。
これを、下図のように、個数についても同様の作業を行います。
ここで、下図のように、最初に作ってインデックス列で昇順で並べ替えを選び、ソートさせます。
すると、下図のように、データが左のデータを基準に上方向につまる状態になります。
これを同様に、下図のように、個数についてもおこないます。
ようやく最後ですが、下図のように、レコードの開始行というフラグでフィルターをかけます。
すると、下図のように、1行にまとまりました。
最後に、閉じて読み込むをクリックします。
すると、下図の通り完成しました。
さいごに
いかがだったでしょうか?一見工程は多いように思いますが、今回もマクロや関数は一切使っておりません。
というか、プログラムが書けないだけですが…
しかし、このように最初に設定しておくことで、同じデータをダウンロードして、データを差し替えるだけで、同じように複数行をまとめることができるので、毎日とか毎週、毎月やる場合には便利なのではないかと思います。
また、操作した内容もpowerQueryで順番等も確認できるため、プログラムの知識とかがなくてもちょっとだけツールを理解するだけで、簡単に修正することできます。
今後も、powerQueryでも面白い使い方を紹介していきたいと思います。