次の方法で共有


列ヘッダーのレベル上げ/下げ

テキスト ファイルなどの非構造化データ ソースから新しいクエリを作成すると、Power Query によってファイルの内容が分析されます。 Power Query が最初の行の別のパターンを識別する場合、データの最初の行をテーブルの列見出しに昇格しようとします。 ただし、Power Query ではパターンが 100% の時間正しく識別されない可能性があるため、この記事では、行から列ヘッダーを手動で昇格または降格する方法について説明します。

行を列ヘッダーにレベル上げするには

次の例では、最初の 3 行のヘッダー行のセットがテーブルに含まれているため、Power Query ではテーブルの列ヘッダーを特定できませんでした。 テーブルの実際の列ヘッダーは、行 5 に含まれています。

行を列ヘッダーに昇格するための初期サンプル テーブルです。

列 (Column1、Column2、Column3、Column4) がすべて Text データ型に設定されているテーブルのスクリーンショット。上部にヘッダーが含まれる 4 つの行、行 5 の列ヘッダー、下部に 7 つのデータ行が含まれています。

ヘッダーをレベル上げするには、テーブルの最初の 4 行を削除する必要があります。 これを行うには、プレビュー ウィンドウの左上隅にあるテーブル メニューを選択し、[ 上部の行削除] を選択します。

[上位行の削除] オプションが強調されているテーブル メニューのスクリーンショット。

[上位の行の削除] ウィンドウの [行数] ボックスに「4」と入力します。

行数が 4 に設定されている [上位行の削除] ダイアログのスクリーンショット。

手記

上位の行 とその他のテーブル操作を削除する方法の詳細については、「行位置でフィルター処理する」を参照してください。

その操作の結果、ヘッダーはテーブルの最初の行として残ります。

最初の行に列ヘッダー、次に 7 行のデータを含むサンプル テーブルのスクリーンショット。

ヘッダーのレベル上げ操作の場所

次の場所から、ヘッダーのレベル上げ操作を行うことができます。

  • [ホーム] タブの [変換] グループ。

    Power Query リボンのスクリーンショットで、[ホーム] タブにある [ヘッダーの昇格] ボタンが強調されています。

  • [変換] タブの [テーブル] グループ。

    [変換] タブの [ヘッダーの昇格] ボタンが強調されている Power Query リボンのスクリーンショット。

  • [テーブル] メニュー。

    ショートカット メニューにある [ヘッダーのレベル上げ] ボタンのスクリーンショット。

ヘッダーの昇格操作を実行すると、テーブルは次の図のようになります。

ヘッダーのレベル上げ操作を行った最終テーブル。

Date、Country、Total Units、Total Revenue の列見出しと、7 行のデータを含む表。 Date 列ヘッダーには日付データ型、Country 列ヘッダーにはテキスト データ型、Total Units 列ヘッダーには整数データ型、Total Revenue 列ヘッダーには 10 進数のデータ型があります。

手記

テーブルの列名は一意である必要があります。 ヘッダー行に昇格させる行に同じテキスト文字列の複数のインスタンスが含まれている場合、Power Query では、一意でないすべてのテキスト文字列にドットの前にドットが付いた数値サフィックスを追加することで、列見出しのあいまいさが解消されます。

列ヘッダーを行にレベル下げするには

次の例では、列ヘッダーが正しくありません。これらは実際にはテーブルのデータの一部です。 テーブルの行の一部になるようにヘッダーをレベル下げする必要があります。

現在列ヘッダーとして使用されているデータの一部を含むテーブルのスクリーンショット。

ヘッダーのレベル下げ操作の場所

「見出しの降格」操作が選択できる場所はいくつかあります。

  • [ホーム] タブの [変換] グループ。

    Power Query リボンのスクリーンショットで、[ホーム] タブにある [ヘッダーを降格] ボタンが強調されています。

  • [変換] タブの [テーブル] グループ。

    [変換] タブの [ヘッダーのレベル下げ] オプションのスクリーンショット。

この操作を行うと、テーブルは次の図のようになります。

行にヘッダーを降格した後のテーブルのスクリーンショット。列ヘッダーが Column1、Column2、Column3、Column4 に設定されるようになりました。

最後の手順として、各列を選択し、新しい名前を入力します。 最終的な結果は次の図のようになります。

列ヘッダーの名前を変更した後の最終テーブルです。

行の位置でフィルター処理する