Power BIを使ってデータ分析を進める際、売上や数値データの集計だけが重要とは限りません。顧客名や商品名、住所などのテキスト(文字列)データをどのように扱うかも、レポートやダッシュボードの見やすさや使いやすさに大きく影響します。その中でも基本的かつ汎用性が高いテクニックが、「文字列の結合」です。
「複数の列をまとめて1つの列にしたい」
「スペースや区切り文字を入れて、見やすく並べたい」
といった場面で役立つ文字列結合の方法を、DAX(Data Analysis Expressions) と Power Query(M言語) の両方でわかりやすく解説します。さらに、文字列結合を使った活用例や運用上のヒントもご紹介しますので、ぜひ参考にしてください。
1. Power BIで文字列を結合するシーン例
-
顧客名や商品名を整形
-
姓と名を結合して「顧客フルネーム」を表示
-
ブランド名と商品コードを合わせて新しい識別子を作成
-
-
住所を1列にまとめる
-
「都道府県」「市区町村」「番地」をスペースやカンマで区切って1つにまとめる
-
地図ビジュアルで住所を扱いやすくしたり、検索を簡易化したりできる
-
-
複数情報を連結したタグの作成
-
キャンペーン名と開始日などを組み合わせて一意のラベルを付与
-
特定の条件に合わせてテキストを切り替える(条件付きテキスト生成)
-
2. DAXで文字列を結合する
2-1. 基本構文
Power BIのデータモデル上で新しい計算列を作成したり、メジャー(Measures)で文字列を返したい場合は、DAXを用いて文字列を結合します。代表的な方法は以下のとおりです。
-
&演算子を使う
DAX新しい列 = 'テーブル名'[列1] & " " & 'テーブル名'[列2]
-
文字列同士を結合するときは「&」を挟むだけ
-
スペースやハイフン、任意の文字も「” “」で囲んでつなぐ
-
シンプルでわかりやすい
-
-
CONCATENATE関数を使う
DAX新しい列 = CONCATENATE('テーブル名'[列1], 'テーブル名'[列2])
-
2つの文字列を引数に取る関数
-
スペースなどを入れたい場合は、
" "
を挟んだ別のCONCATENATE
呼び出しをネストするか、&演算子で補う必要あり -
2つの引数にしか対応していないので、複数の列を一度に結合したい場合は注意
-
2-2. 複数列を結合する場合の例
複数の列をまとめて1つにしたいなら、&演算子を連続で使うのがシンプルです。
フル住所 =
'住所テーブル'[都道府県]
& " "
& '住所テーブル'[市区町村]
& " "
& '住所テーブル'[番地]
このように、文字列をまとめると同時に見やすいようにスペースを挟むだけでOK。任意の文字(ハイフン、カンマなど)を入れたい場合も同様です。
3. Power Queryで文字列を結合する
3-1. Power Queryエディタとは?
Power Queryは、Power BI Desktopの「クエリエディタ」で利用されるデータ前処理ツールです。データを取り込んだ段階で列の結合やクリーニングを行い、きれいなデータをデータモデルに渡せるようにします。
3-2. GUI操作で文字列結合
Power Queryでは、コードを直接書かずにGUI操作で文字列結合が可能です。
-
結合したい列を複数選択(CtrlキーやShiftキーを使う)
-
コンテキストメニュー(右クリック)で「列の結合」を選択
-
「区切り文字を選択」でスペースやカスタム文字を設定
-
新しい列名を指定し「OK」
これで、選択した列がまとめて1つの列として生成されます。
3-3. M言語を使った文字列結合
Power Queryの裏側で動いているのはM言語というスクリプトです。細かい制御をしたい場合は、数式バーや「詳細エディター」でM言語を編集します。
-
Text.Combine関数
MText.Combine(
{
[都道府県],
[市区町村],
[番地] },
" "
)
-
第1引数に文字列リストを渡し、第2引数に区切り文字を指定すると、一度に複数文字列を結合可能
-
リスト内の要素を柔軟に組み合わせることができる
-
4. 文字列結合を効率化するヒント
-
不要な空白を取り除く
データソースによっては前後に余計な空白(トリムしないと見えないスペースなど)が含まれているケースも。Trim関数 で事前に除去するとトラブルを防止できます。 -
文字列のデータ型を確認
Power Queryでデータ型を「Text」に設定しておかないと、結合時に型エラーが発生する場合があります。Excelの数値データなどを結合する際は、文字列型に変換してからにしましょう。 -
結合結果の長さに注意
データベースによっては、一定以上の文字列長を扱えない場合があります。Power BI自体は比較的寛容ですが、あまりにも長い文字列を結合するとパフォーマンスに影響 を与える可能性もあるので注意が必要です。 -
必要に応じて条件分岐する
結合対象の列が空の場合には別の処理をしたい、などの要件がある場合は、Power Queryならif then else
文やDAXならIF
関数を使って条件分岐を実装できます。
5. 文字列結合の活用事例
-
商品ラベルの作成
商品名やサイズ、色などを1つの列にまとめることで、在庫管理やカタログ表示に役立つ一意のラベルを生成可能。 -
ダッシュボードでの表記の簡略化
折れ線グラフや棒グラフ上に表示するラベルを、結合した文字列でわかりやすくする。たとえば、横軸に「2025年1月度 売上:500万円」という文字列を表示したい場合など。 -
検索機能の強化
社員名簿や顧客リストなどで複数の列にまたがる情報をまとめておくと、Power BIのフィルターや検索機能で一度に検索できるようになる。
6. Power BI活用でお悩みなら
文字列結合はPower BIを使いこなす上での基本テクニックの一つですが、実際のプロジェクトではデータ構造の違いや要件の多様さから複雑なケースに遭遇することも珍しくありません。「列の結合だけでなく、より高度な前処理や分析をしたい」「チーム全員がPower BIを使えるように研修してほしい」といったお悩みがあれば、ぜひ専門コンサルティングに頼ることをご検討ください。
当社では、Power BI をはじめとするBIツールの導入・活用支援を行っており、データの取り込みからモデル設計、ダッシュボード作成、運用フェーズまでトータルでサポートしています。初めての導入でどう進めていいかわからない方や、既に導入しているけれど活用がうまく進まないという企業様まで、幅広いニーズに対応可能です。
▼ Power BI導入・活用の無料相談はこちら →
https://powerbiseminar.com/lp/
まとめ
Power BIで文字列を結合する方法には、DAXを使ったやり方(& 演算子やCONCATENATE関数) と Power QueryでのGUI操作やM言語を使う方法 があります。どちらのアプローチを使うかは、「データモデル側で結合すべきか」「ロード前にクリーニングするべきか」 といった要件次第です。
-
DAXの&演算子:シンプルかつ直観的に使える
-
Power Queryの列の結合機能:ロード前にデータを整形し、一度に複数列をまとめるのに便利
文字列結合は地味な操作のようでいて、データを分かりやすく整理したり、分析や可視化の幅を広げたりする重要なテクニックです。もしPower BIの使い方やデータモデリング全体で行き詰まりを感じているようでしたら、ぜひ以下のリンクから専門家にご相談ください。最適な活用方法をご提案し、貴社のデータ活用を強力にバックアップいたします。
コメント