PR

Power Queryで列を分割する | 区切り記号が1つの場合

Power Query基礎
スポンサーリンク

Excelでデータ整理を行う際、一つのセルに「姓と名」や「都道府県と住所」が混在しており、集計や分析の妨げになることがあります。

Excel標準の「区切り位置」機能や関数(LEFTFIND)で対処できますが、データ更新のたびに作業が発生するのは非効率です。Power Queryの「列の分割」機能を使えば、一度の手順記録で、次回以降は「更新」ボタンのみで処理が完了します。

本記事では、基本となる「区切り記号が1つ(1種類)の場合」をテーマに、一般的な列方向(横)への分割に加え、データ分析で威力を発揮する行方向(縦)への分割テクニックを解説します。

本記事のExcelは次のバージョンを使用しています。
Microsoft® Excel® for Microsoft 365 MSO (バージョン 2511 ビルド 16.0.19426.20218) 64 ビット

スポンサーリンク

サンプルデータ

解説には、2種類のデータパターンを含んだ以下のテーブルを使用します。

  • 「氏名」列: 全角スペースで区切られています。これを列方向(横)に分割し、「姓」と「名」にします。
  • 「担当プロジェクト」列: カンマ(,)で区切られています。これを行方向(縦)に分割し、1行1案件の形式(正規化)にします。

サンプルデータはこちらからダウンロードしてください。

スポンサーリンク

実際の手順:パターン1 列方向への分割(横に広げる)

まずは基本となる、横方向への分割です。1つの列を複数の列に分けます。

サンプルデータをPower Queryでデータ取得済みを前提に進めます。

手順1:対象の列を選択して区切り記号による分割を行う

Power Query エディターを開き、分割したい「氏名」列を選択します。

「ホーム」タブ(または「変換」タブ)ー「列の分割」ー「区切り記号による分割」をクリックします。

設定画面(ダイアログボックス)が表示されます。Power Queryは列の内容から区切り記号を自動推測しますが、念のため設定を確認します。

  1. 区切り記号:「スペース」を選択します。
  2. 分割:「区切り記号の出現ごと」(デフォルト)を選択します。今回はスペースが1つなのでどれを選んでも結果は同じですが、基本設定としてこちらを使用します。
  3. 設定後、「OK」をクリックします。

区切り記号ですが、全角スペースの場合は「カスタム」を選び、ボックス内に「全角スペース」を入力してください。

手順2:列名の修正

処理が完了すると、「氏名」列が「氏名.1」「氏名.2」の2列に分割されます。

ヘッダーをダブルクリックし、それぞれ「姓」「名」に変更します。

姓、名に分割できました。

手順3:データ加工の結果確認

データ加工した結果を確認します。「ホーム」タブー「閉じて読み込む」をクリックします。

姓名がに分割されたExcelの表が出力されていれば完了です。

スポンサーリンク

実際の手順:パターン2 行方向への分割(縦に並べる)

次に、Power Queryならではの強力な機能「行方向への分割」です。

「担当プロジェクト」列のように1つのセルに複数の値が入っているデータは、そのままではピボットテーブルでの集計やPower BIでの分析に適していません。これを「1行1データ」の形(正規化)に変換します。

パターン1の手順を実施した前提に進めます。

1. 対象の列を選択して区切り記号による分割を行う

Power Query エディターを開き、分割したい「担当プロジェクト」列を選択します。

「ホーム」タブ(または「変換」タブ)ー「列の分割」ー「区切り記号による分割」をクリックします。

設定画面(ダイアログボックス)が表示されます。ダイアログボックスで以下の設定を行います。

  1. 区切り記号:「コンマ」を選択します。
  2. 分割:「区切り記号の出現ごと」を選択します。
  3. 分割の方向:「行」を選択します。
  4. 設定後、「OK」をクリックします。

「詳細設定オプション」はデフォルトでは閉じているため、▷ボタンをクリックしてメニューを展開してください。

「担当プロジェクト」列がカンマ区切りごとに行で分割され、1行1案件の形式になりました。

手順2:データ加工の結果確認

データ加工した結果を確認します。「ホーム」タブー「閉じて読み込む」をクリックします。

担当プロジェクトがに分割されており、1セルに1つになっているExcelの表が出力されていれば完了です。

行数は増えましたが、これで「各案件の担当者数」などの集計が容易になります。VBAを使わずにこの処理ができる点は、Power Queryの大きなメリットです。

スポンサーリンク

失敗しないための3つの注意点

実務データ特有のトラブルを防ぐため、以下の3点を必ず確認してください。

分割後に不要なスペースは除去する

「A案件, B案件」のように区切り記号の直後にスペースが含まれている場合、分割後のデータに「 B案件」のように頭にスペースが残ることがあります。

これが原因でデータの不一致が起こります。対策として、分割直後は列を選択し、「変換」タブー 「書式」ー「トリミング」を実行しましょう。前後の余分なスペースが削除されます。

文字の除去については、次の記事でも解説しています。

勝手な「型変換」によるデータ欠損

Power Queryは分割後、自動的に数値などのデータ型を判定し変換します。

商品コード「001」のような文字列が数値として扱われ、「1」に変換される(0落ちする)ケースがあります。

右側の「適用したステップ」を確認し、意図しない「変更された型」ステップが追加されていた場合は、削除または修正してください。

元の列を残したい場合

「列の分割」を実行すると、元の列は分割後の列に置き換わります。
元の列を保持したまま分割したい場合は、列を複製して分割を行ってください。

「列の追加」タブー「重複する列」をクリックします。

列が複製されます。複製された列に対して分割を行えば、元の列は消えずに維持されます。

スポンサーリンク

まとめ

Power Queryの「区切り記号による列の分割」について解説しました。

  • 列方向(横)への分割: 「氏名」や「住所」などの項目整理に使用。
  • 行方向(縦)への分割: 複数値を持つデータの正規化(分析用データの作成)に使用。
  • 「行」への切り替え: 「詳細設定オプション」から選択可能。

特に「行方向への分割」は、Excelの数式では難しいのではないかと思います。データの構造に合わせて適切な分割方法を選び、業務効率化につなげてください。

Excel/Power Queryのデータ加工相談サービス

Excel/Power Queryのデータ加工で悩んでおり、ネットや本で調べても解決しない場合は、一度ご相談下さい。

やりたいことをヒアリングして解決までサポートいたします。

ご相談内容の例
  • 前任者が作ったExcelファイルの数式等が意味不明で困っている
  • Power Queryを使ってExcelでデータ加工を行いたいが、うまく使いこなせない
  • 手作業が多く、業務効率化を行いたいが、どう進めていいか分からない

ココナラでご相談を受け付けております。ココナラの会員登録が必要になります。

Power Queryの学習に役立つおすすめ本
初心者向け 初心者~中級者向け 中級者~上級者向け
Power Query基礎
スポンサーリンク
プロフィール
たがみ

IT業界20年程度のシステムエンジニアです。
構築したシステムのデータ検証をExcelで実施することが多く、検証作業の効率化を模索しているときにPower Queryと出会いました。
Excel業務効率化の手助けになればと当ブログを開設しました。
今ではデータ分析でPower BIを活用しており、Power BI、Excelの両方でPower Queryを活用しています。

たがみをフォローする
シェアする
たがみをフォローする
タイトルとURLをコピーしました