なんでもエクセル(Nandemo Excel)

何でもエクセルでやってしまう そこのあなた。ようこそ

Power Query:要素数の異なる配列からテーブルを作る

個数の合わない配列(ジャグ配列)を、単純に1テーブルに変換しようとすると、エラーを起こしてしまう。例えば要素数が 10個の配列(例えば「{1..10}」)を 3分割した場合、最後の配列の要素数は 1つになる。これを Table.FromRowsでテーブルに変換しようとすると、最終行はエラー表示になる。


let     ソース = {1..10},     テーブル分割 = List.Split(ソース, 3),     テーブル変換 = Table.FromRows(テーブル分割) in     テーブル変換

これを防ごうと、足りない部分を「null」で埋めて……とやってもいいんだけど(自分は最初そうやろうとしていた)、List.Zipを使えばもっと簡単にエラーを回避できる。


let     ソース = {1..10},     テーブル分割 = List.Split(ソース, 3),     テーブル変換 = Table.FromColumns(List.Zip(テーブル分割)) in     テーブル変換

Microsoftの「List.Zip」のヘルプにも、ちゃんと「長さが異なるリスト(中略)を Zip 圧縮します」と書いてある。ヘルプはよく読まないとダメね。

learn.microsoft.com