Excel関数 逆引き集 | 区切り文字付き結合 → TEXTJOIN

Excel
スポンサーリンク

概要

複数の文字列を「区切り文字つき」でまとめて 1 つのセルにしたいとき、
最強なのが TEXTJOIN(テキストジョイン)関数です。

TEXTJOIN を使うと、

  • 「, 」区切りで一覧を作る
  • 「/」区切りで項目を並べる
  • 改行区切りでメッセージをまとめる
  • 空白セルを自動で無視する

といった処理が 1 行の式で完結します。

初心者でもすぐ使えるように、テンプレートと例題つきで丁寧に解説します。


TEXTJOIN の基本

TEXTJOIN の書式

=TEXTJOIN(区切り文字, 空白を無視するか, 結合したい範囲またはセル)

区切り文字
… 文字列と文字列の間に入れる記号(例:「, 」「/」「・」「 」など)

空白を無視するか
… TRUE なら空白セルを飛ばす
… FALSE なら空白セルも区切り対象に含める

結合したい範囲
… A2:A10 のように範囲をそのまま渡せるのが便利


基本パターン:カンマ区切りで結合する

空白セルを無視して一覧を作る

B2:E2 に都市名が入っているとします(空白も混ざる想定)。

=TEXTJOIN(", ", TRUE, B2:E2)

TRUE にしているので、空白セルは無視され、
「東京, 大阪, 名古屋」のようにきれいに並びます。


パターン1:氏名+部署+会社名を区切り文字で結合

固定文字を混ぜながら結合する

A2=氏名、B2=部署、C2=会社名とします。

=TEXTJOIN(" ", TRUE,
  A2,
  "(" & B2,
  "/" & C2 & ")"
)

結果例:
田中太郎(営業部/ABC株式会社)

TEXTJOIN の引数には、セル参照だけでなく
"(" & B2 のような式も入れられます。


パターン2:改行区切りで結合する(メッセージ生成)

TEXTJOIN × CHAR(10) で縦に並べる

A2:A5 に複数行のメッセージが入っているとします。

=TEXTJOIN(CHAR(10), TRUE, A2:A5)

1 セルの中で改行しながら結合されます。

※セルの書式設定 →「折り返して全体を表示する」にチェックが必要です。


パターン3:選択された項目だけを区切り文字で結合

FILTER と組み合わせて「チェックされた項目だけ」つなぐ

A2:A10=項目名
B2:B10=フラグ(1=選択、空白=未選択)

=TEXTJOIN("/", TRUE, FILTER(A2:A10, B2:B10=1))

B列が 1 の行だけ抽出し、それらを「/」区切りで結合します。


パターン4:数値や日付を整形してから結合する

TEXT と組み合わせて見た目を整える

A2=顧客名
B2=日付
C2=金額

=TEXTJOIN(" / ", TRUE,
  A2,
  TEXT(B2, "yyyy/mm/dd"),
  TEXT(C2, "¥#,##0")
)

結果例:
山田太郎 / 2025/01/15 / ¥12,345


パターン5:範囲をそのまま渡して一気に結合

TEXTJOIN の最大の強み

& では 1 つずつつなぐ必要がありますが、
TEXTJOIN は 範囲を丸ごと渡せる のが圧倒的に便利です。

=TEXTJOIN("・", TRUE, A2:D2)

A2〜D2 の内容を「・」区切りでまとめてくれます。


例題

問題1

B2:E2 に都市名が入っています。
空白セルを無視して「, 」区切りで結合する式を書いてください。

=TEXTJOIN(", ", TRUE, B2:E2)

問題2

A2=氏名、B2=部署、C2=会社名。
「氏名(部署/会社名)」の形式で結合する TEXTJOIN の式を書いてください。

=TEXTJOIN(" ", TRUE,
  A2,
  "(" & B2,
  "/" & C2 & ")"
)

問題3

A2:A5 の 4 行のテキストを、
1 セル内で改行しながら結合する式を書いてください。

=TEXTJOIN(CHAR(10), TRUE, A2:A5)

問題4

A2:A10 に項目名、B2:B10 にフラグ(1=選択)が入っています。
選択された項目だけを「/」区切りで結合する式を書いてください。

=TEXTJOIN("/", TRUE, FILTER(A2:A10, B2:B10=1))

問題5

A2=顧客名、B2=日付、C2=金額。
「顧客名 / yyyy/mm/dd / ¥#,##0」の形式で結合する式を書いてください。

=TEXTJOIN(" / ", TRUE,
  A2,
  TEXT(B2, "yyyy/mm/dd"),
  TEXT(C2, "¥#,##0")
)

まとめ

TEXTJOIN のポイントは次の 3 つです。

  • 区切り文字を自動で挟んでくれる
  • 空白セルを無視できる(TRUE)
  • 範囲をそのまま渡せるので式が短くなる

まずはこの基本形を覚えておくと便利です。

=TEXTJOIN(区切り文字, TRUE, 結合したい範囲)

ここから、改行・FILTER・TEXT との組み合わせに広げていくと、
実務で必要な「一覧生成」「説明文作成」「選択項目のまとめ」が
驚くほどスムーズに作れるようになります。

Excel
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました