List、Record、または Table 構造化列の操作 (Power Query)

適用先
Excel for Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016

ListRecordTable などの構造化列には、列に関連する値が関連付けられています。 構造化列には、列ヘッダーに [展開] アイコン [ 列の展開] アイコン があります。

構造化列について

構造化列には、次の 3 種類があります。

  • リスト 値の一覧 (例: { 1、2、5、10 }、{ "hello"、"hi"、"good bye" } など) を格納します。 セル内の List の値は最も単純な構造化列であり、テーブルリレーションシップはありません。
  • レコード 単位にグループ化された名前付きフィールドのセットを格納します。 たとえば、[ FirstName = "Joe",LastName = "Smith", Birthdate = #date(2010, 1, 2) ]。 セルの [ レコード ] の値は、現在のテーブルまたはプライマリ テーブルとの 1 対 1 のテーブルリレーションシップを示します。
  • テーブル 現在のデータ (プライマリ テーブル) とセカンダリ リレーションシップを持つテーブルを格納します。 セル内の Table の値は、現在のテーブルまたはプライマリ テーブルとの 1 対多のリレーションシップを示します。

Record 列と Table 構造化列は、OData フィードの外部キー関連付けを持つエンティティや、SQL Server データベース内の外部キーリレーションシップなど、リレーショナル モデルを持つデータ ソース内のリレーションシップを表します。

テーブル構造化列の展開について

[列展開] アイコン アイコンを使用して、関連するテーブルの列を表示できます。 たとえば、 Orders テーブルでは、展開操作によって Order テーブルに関連 するOrder_Details レコードがまとめられます。これにより、 注文 明細行項目と各注文が結合されます。 展開操作では、プライマリ テーブルが拡大され、セカンダリ テーブルと関連テーブルの列が含まれます。 説明するには:

プライマリ テーブルには、 列 AB があります

列 A および B

関連テーブルには列 C があります。

列 A、B、および関連する C

展開操作は、列 C を含むようにプライマリ テーブルを拡大し、列 C を含むセカンダリ テーブルと関連テーブルの関連値を含むプライマリ テーブルを展開します。

ABC

要約すると、 Table 構造化列を展開すると、データ プレビューの他の列と共に値が表示されます。 プライマリ テーブルと関連テーブルの組み合わせの詳細については、「 複数のデータ ソースを結合する方法について説明する」を参照してください。 

Table 構造化列を展開する

この例では、展開操作によって Order テーブルが拡大され、 Order_Details.ProductIDOrder_Details.UnitPriceおよび Order_Details.Quantity 列が含まれるため、プライマリ テーブル の Order 行と関連テーブル Order_Details行が まとめられます。

構造化テーブル データのサンプル

  1. クエリを開くには、Power Query エディターから読み込まれたクエリを探し、データ内のセルを選択し、[クエリ>Edit] を選択します。 詳細については、「 Excel でクエリを作成、読み込み、または編集する」を参照してください。

    メモ クエリでは、リレーションシップに少なくとも 2 つのテーブルが結合されている必要があります。 詳細については、「クエリのマージ」を参照してください。 

  1. 構造化列の列ヘッダーにある展開アイコン (展開 ) をクリックします。

  2. [ 列名 ] ドロップダウン リストで、目的の列を選択し、不要な列をクリアします。 

    列名を選ぶ

  3. [OK] を選択します。

結果

このテーブルには、手順 3 で選択した各列の新しい列が含まれるようになりました。 

構造化テーブル列を展開した結果

[Record structured column]\(レコード構造化列\) を展開する

[レコード構造化列] を展開すると、値はデータ プレビューに新しい列として表示されます。 展開してクエリをワークシートに読み込まない場合は、列内の各セルの プレースホルダー値 [Record] が 表示されます。

  1. クエリを開くには、Power Query エディターから読み込まれたクエリを探し、データ内のセルを選択し、[クエリ>Edit] を選択します。 詳細については、「 Excel でクエリを作成、読み込み、または編集する」を参照してください。

  2. 列を展開せずに特定の値を表示するには、構造化列で Record 値を持つ値を選択します。 次に例を示します。

    レコード複合列を展開する

  3. 構造化列の列ヘッダーで展開アイコン (展開 ) を選択します。

  4. [ 列名 ] ドロップダウン リストで、目的の列を選択し、不要な列をクリアします。

    構造化レコード列の [展開] をクリックする

  5. [OK] を選択します。

結果

このテーブルには、手順 4 で選択した各列の新しい列が含まれるようになりました。 

構造化レコード列を展開した結果

List 構造化列を展開する

List 構造化列を展開すると、値はデータ プレビューに新しい列として表示されます。 展開し、ワークシートにクエリを読み込まない場合は、列の各セルの [リスト] の プレースホルダー値が表示されます。

  1. クエリを開くには、Power Query エディターから読み込まれたクエリを探し、データ内のセルを選択し、[クエリ>Edit] を選択します。 詳細については、「 Excel でクエリを作成、読み込み、または編集する」を参照してください。

  2. 列を展開せずに特定の値を表示するには、構造化列で List 値を持つ値を選択します。 次に例を示します。

    List 複合列の展開

  3. 構造化列の列ヘッダーで展開アイコン (展開 ) を選択します。

  4. 次のいずれかの操作を行います。

    • リスト値ごとに行を作成するには、[ 新しい行に展開] を選択します。
    • 区切り記号で区切られたテキスト値の一覧を作成するには、[ 値の抽出] を選択します。
  5. [OK] を選択します。

[新しい行に展開] の結果

構造化リスト列を行ごとに展開した結果

セミコロン (区切り記号として;)) を使用した値の抽出の結果

区切り記号を使用して値を抽出して構造化リスト列を展開した結果

構造化列グループでのコマンドの使用

Power Query エディター リボンで次の追加コマンドを使用して、構造化列を操作できます。

  1. [ ホーム>変換 ] を選択し、[ 構造化列] グループで次のいずれかのコマンドを選択します。
    展開 構造化列 (リスト、レコード、またはテーブル) を昇格させ、現在のクエリ テーブルの新しい列と行にします。 このコマンドは、[展開] アイコンと同じです。

    集計集計関数 (Sum や Count など) を使用して、Table 構造化列の値集計します。 このコマンドは、[展開] アイコンを選択し、[列名] ドロップダウン ダイアログ ボックスで [集計] を選択する場合と同じです。 テーブル 構造化列 でのみ使用できます。

    値の抽出 指定した区切り記号を使用して、構造化 された List 列の値を 1 つのテキスト値に結合して抽出します。

メモ[数値列] グループ (Select Transform>Statistics) の [統計] コマンドを Table 構造化列と共に使用することもできます。 集計関数の一覧は、Power Query エディター リボンの [リスト ツール] の [変換] コンテキスト タブの [数値一覧] グループの [統計] コマンドと同じです。

[コンテキストの変換] タブを使用する

ドリルダウン コマンドを使用すると、Power Query エディター リボンの [リスト ツール] の下に [コンテキストの変換] タブを表示し、構造化列を操作するための追加のコマンドを表示できます。 この [変換] タブを、Power Query エディター リボンで定期的に使用できる他の [変換] タブと混同しないでください。

  1. 列ヘッダーを右クリックし、[ ドリルダウン] を選択します。
  2. リストまたはレコードをテーブルに変換するには、[リスト ツール] で [変換>テーブル] を選択します。
  3. アイテムの上部、下部、または範囲を保持するには、[リスト ツール] で [変換]、[アイテム>キープ] を選択します。
  4. 上部、下部、または代替項目を削除するには、[リスト ツール] で [変換]、[アイテムの削除>を選択します
  5. 重複する値を削除するには、[リスト ツール] で [変換] > [重複の削除] を選択します。 詳細については、「 重複する行を保持または削除する」を参照してください。
  6. 項目を元に戻すには、[ リスト ツール] で [ 変換>アイテムの変更] を選択します。
  7. データを並べ替えるには、[リスト ツール] で、Excel で [昇順で A から Z に並べ替える] コマンドを選択し、A から Z に並べ替えるか、最も小さい数値を最大に並べ替えるか、または Z を A に並べ替える Excel の [降順 Z から A に並べ替え] コマンドを選択します 詳細については、「データの 並べ替え」を参照してください。
  8. さまざまな統計情報を表示するには、[ リスト ツール ] で [ 変換>Statistics] を選択します。 使用可能な統計は、合計最小値最大値中央値平均Standard偏差カウント値および個別の値のカウントです。 詳細については、「 列からのデータの集計」を参照してください。

関連項目

Power Query for Excel のヘルプ

クエリのマージ

行のグループ化または集計 (docs.com)