Power Query では、さまざまな方法を使用して列を分割することができます。 この場合、選択した列を位置で分割できます。
[列の分割] > [位置] の場所
[列の分割] > [位置] オプションは、次の 3 つの場所にあります。
[ホーム] タブ — [列の分割] ドロップダウン メニューの下、[変換] グループ内。
[変換] タブ — [列の分割] ドロップダウン メニューの下、[テキスト列] グループ内。
列を右クリックする — [列の分割] オプション内。
列を位置で分割する
この例の初期テーブルは、以下の画像に示すテーブルで、[Column1] という 1 つの列のみで構成されます。
この列には、次の 3 つの値が入っています。
- アカウント名 — 最初の 6 文字
- 日付 — 続く yyyymmdd の形式の 8 文字
- ユニット — 残りの文字
この例では、この列を上の一覧で説明した値が含まれる 3 つの列に分割します。 この分割を行うには、列を選択してから、列を位置で分割するオプションを選択します。 [位置による列の分割] で、次の構成を適用します。
- 位置: 0、6、14
- 位置は 0 から始まり、コンマで区切られます。ここで、位置 0 は文字列の先頭です。
Note
この操作では、最初に位置 0 から位置 6、次に位置 7 から位置 14 までの列の作成が開始されます。 現在のデータ プレビューの内容には、長さが 16 文字以上の値が別の列に含まれている必要があります。
その操作の結果として、3 つの列で構成されるテーブルが生成されます。
Note
Power Query によって、列が 2 つの列のみに分割されます。 新しい列の名前には、元の列と同じ名前が付けられます。 新しい列の名前には、ドットと列の分割セクションを表す数値が含まれるサフィックスが追加されます。
列の名前を変更し、各列のデータ型を次のように定義することもできます。
元の列名 | 新しい列名 | データの種類 |
---|---|---|
Column1.1 | アカウント名 | Text |
Column1.2 | 日 | 日 |
Column1.3 | ユニット | 整数 |
最終的なテーブルは、次の画像のようになります。
列を位置で行に分割する
この例の初期テーブルは、以下の画像に示すテーブルで、[Group] と [Account] という列で構成されます。
Account 列には、同じセルに 2 つの値しか保持することができません。 各値の文字数は同じで、合計で 6 文字です。 この例では、それらの値を分割して、各アカウントの値がそれぞれの行に入るようにします。 この分割を行うには、Account 列を選択してから、列を位置で分割するオプションを選択します。 [位置による列の分割] で、次の構成を適用します。
- 位置: 0, 6
- [分割の方向]: [行]
Note
この操作では、最初に位置 0 から位置 6 までの列の作成が開始されます。 現在のデータ プレビューの内容には、長さが 8 文字以上の値が別の列に含まれている必要があります。
この操作の結果、テーブルの列の数は変わりませんが、行数が増えています。セルの値がそれぞれのセルの中に入力されるようになったためです。