
Excel に次のような値の表があります:
Col1 Col2
---- ----
a 1
b 2
c 3
d 1
e 1
f 2
結果の相互参照テーブルをいくつかの関数に基づいて作成したいと思います。
NewCol1 NewCol2
------- -------
1 a, d, e
2 b, f
3 c
どうすればいいですか?それは可能ですか?
答え1
テーブル内の任意の場所にカーソルを置き、[データ] > [データの取得と変換] > [テーブル/範囲から] を使用します。以前のバージョンの Excel を使用している場合は、Power Query アドイン経由でアクセスできる可能性があります。
Power Query エディターが開き、次のように表示されます。
ヘッダーをクリックして Col2 を選択し、次のように [ホーム] > [変換] > [グループ化] を使用します。
[OK] をクリックすると、Col1 を合計するとエラーが発生することがわかります。
ホーム > クエリ > 詳細エディターを使用すると、次のようになります。
次に、次の部分を変更します。
List.Sum([Col1])
これに対して:
Text.Combine([Col1],", ")
つまり、次のようになります。
let
Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Col1", type text}, {"Col2", Int64.Type}}),
#"Grouped Rows" = Table.Group(#"Changed Type", {"Col2"}, {{"Col1", each Text.Combine([Col1],", "), type text}})
in
#"Grouped Rows"
[OK] をクリックすると、希望する結果が得られます。
これで、[ホーム] > [閉じて読み込む] を使用して結果をワークブックに読み込むことができます。ソース テーブルに新しいデータが追加されたら、ワークブック内のテーブルを右クリックし、[更新] を選択して変換を再度実行します。