Power Queryエディター上で数字か文字かを基準に列を分割したい場合、どうしたら良いですか?
では、詳細を解説していきますね。
目次[閉じる]
はじめに
この記事はパワークエリの概要を把握していることが前提です。
パワークエリの概要は以下の記事をご参照ください。
「数字から数字以外による分割」・「数字以外から数字による分割」コマンドとは、Power Queryエディター上で数値か文字列かを基準に1列を2列へ分割する機能
「数字から数字以外による分割」・「数字以外から数字による分割」コマンドは、クエリの新規作成ステップのうち、Step 2の「取得データを整形/加工(Transform)」に該当する機能です。

クエリ内の一連の整形作業の中で、数値か文字列かを基準に列を分割したい場合に「数字から数字以外による分割」・「数字以外から数字による分割」コマンドを使いましょう。

「数字から数字以外による分割」・「数字以外から数字による分割」コマンドの活用により、Power Queryエディター上で数値か文字列かを基準に1列を2列へ分割できます。
「数字から数字以外による分割」コマンドは数値+文字列の列を数値・文字列の2列に、「数字以外から数字による分割」コマンドは文字列+数値の列を文字列・数値の2列に分割。
一例として、「請求金額」列を対象に「数字から数字以外による分割」コマンドを使用し、「請求金額」・「単位」の2列に分割したものが以下です。

この通り、Power Queryエディター上で数値か文字数かを基準に列を分割したステップを記録できました。
「数字から数字以外による分割」・「数字以外から数字による分割」コマンドの場合、デフォルトのステップ名はいずれも「文字の移行による列の分割」になる(クエリ内で2つ目以降の「文字の移行による列の分割」ステップは連番が付加)。
分割後の数値の列はデータ型が「テキスト」のままのため、後工程で数値として整形あるいは集計する場合、データ型を「整数」等へ変更すること。
後は、クエリ新規作成ステップのStep 2とStep 3を行いましょう。
これにより、クエリに記録した「数字から数字以外による分割」・「数字以外から数字による分割」コマンドのステップを自動化できます。
「文字の移行による列の分割」ステップを記録後、対象の列名を変更すると、クエリ更新時にエラーになるため注意(対処法は後述)。
クエリの新規作成ステップのStep 2に役立つ各種コマンドや、Step 3の手順の詳細を知りたい方は、パワークエリの概要記事をご参照ください。
【Excel】パワークエリ(Power Query)とは?できることや使い方入門【動画あり】
「数字から数字以外による分割」・「数字以外から数字による分割」コマンドの使用手順
「数字から数字以外による分割」・「数字以外から数字による分割」コマンドは、以下の手順で使用します。

- 分割したい列を選択
※今回は「請求金額」列 - リボン「変換」タブをクリック
- 「列の分割」をクリック
- 「数字から数字以外による分割」 or 「数字以外から数字による分割」をクリック
※今回は「数字から数字以外による分割」
手順②は、手順①のヘッダー上で右クリック、リボン「ホーム」タブでもOK(それぞれ同じコマンドがある)。
手順③の「列の分割」コマンドは、手順①で1列のみ選択しないと活性化されない。
手順④は、手順①の列が数値始まりか文字列始まりかかで使い分け。
【注意】「列の分割」は「列の追加」タブに存在しない
「列の分割」コマンドは、リボン「列の追加」タブに存在しません。
よって、前述の使用手順①で選択した列を上書きしたくない場合、事前に「重複する列」コマンドで対象の列を複製しておきましょう。

- 複製したい列を選択
※今回は「請求金額」列 - リボン「列の追加」タブをクリック
- 「重複する列」をクリック
後は、複製した列に対し、「数字から数字以外による分割」・「数字以外から数字による分割」コマンドを使用すれば、分割前後の列がすべて残ります。
「文字の移行による列の分割」ステップの変更手順
「数字から数字以外による分割」・「数字以外から数字による分割」コマンドで記録した「文字の移行による列の分割」ステップを後から変更する場合、以下の手順で変更しましょう。

- 「文字の移行による列の分割」ステップを削除(「×」をクリック)
- 再度「文字の移行による列の分割」ステップを記録
手順①のステップ名は、「数字から数字以外による分割」・「数字以外から数字による分割」コマンドのデフォルトの名前(自身でリネームしている場合は別表記)。
サンプルファイルで練習しよう!
可能であれば、以下のサンプルファイルをダウンロードして、実際に操作練習をしてみてください。
サンプルファイル_PowerQueryデータ整形_数字から数字以外による分割.xlsx
ブックを開いたら、「請求データ(数字から数字以外による分割)」クエリを編集(Power Queryエディター起動)し、次の手順を実施してください(今までの解説のまとめです)。
ブック起動時、「セキュリティの警告」メッセージが表示された場合は「コンテンツの有効化」をクリック。
- 分割したい列を選択
※今回は「請求金額」列 - リボン「変換」タブをクリック
- 「列の分割」をクリック
- 「数字から数字以外による分割」 or 「数字以外から数字による分割」をクリック
※今回は「数字から数字以外による分割」
本記事の解説と同じ結果になればOKです!
さいごに
いかがでしたでしょうか?
「数字から数字以外による分割」・「数字以外から数字による分割」コマンドの活用により、Power Queryエディター上で数値か文字列かを基準に1列を2列へ分割できます。
1列の中の数値部分を対象に整形や集計したい場合に活用しましょう。
なお、パワークエリの各種テクニックは、私の拙著でも体系的に解説していますので、こちらも参考にしてみてください。
ご参考になれば幸いですm(_ _)m
具体的には、区切り記号を基準に分割する「区切り記号による分割」コマンド、文字数を基準に分割する「文字数による分割」コマンドです。
作業目的やデータ内容に応じて、これらのコマンドをうまく使い分けできるようになりましょう!

コメント Comments
コメント一覧
コメントはありません。
トラックバックURL
https://excel-master.net/data-utilization/data-shaping/add-calculated-column/power-query-column-split-numbers-character/trackback/