【Excel】TEXTJOIN関数で複数のセルの文字列を結合する方法

この記事は約4分で読めます。

今回は、ExcelのTEXTJOIN関数を使って、複数のセルに入力された文字列や値を、指定した区切り文字で一つに結合する方法について紹介します。
例えば、姓と名が別のセルに入力されているデータを「姓
名」のようにスペースを挟んでつなげたり、複数の商品名や担当者名を「,(カンマ)」で区切って1つのセルにまとめたりする場面があるかと思います。
以前からある「CONCATENATE関数」や「&(アンパサンド)」を使っても文字をつなぐことは可能ですが、結合するセルが多い場合や、間に区切り文字を入れたい場合、あるいは空白セルが含まれている場合には数式が複雑になりがちでした。
TEXTJOIN関数は、これらの課題を解消し、よりシンプルに複数の文字列を結合できる強力な関数です。

TEXTJOIN関数の基本的な構文

TEXTJOIN関数は、主に3つの引数(設定項目)を指定して使用します。基本的な書き方は以下の通りです。
`=TEXTJOIN(区切り文字, 空白セルの扱い, テキスト1, [テキスト2]…)`
それぞれの引数がどのような意味を持つのか、詳しく見ていきましょう。

第1引数:区切り文字

結合する文字列と文字列の間に挟む文字を指定します。
例えば、カンマで区切りたい場合は `”,”`、スペースで区切りたい場合は `” “`(半角スペース)、ハイフンで区切りたい場合は `”-“`
のように、必ずダブルクォーテーション(””)で囲んで指定します。
間に何も挟まずに文字をそのままつなげたい場合は、`””`(ダブルクォーテーションを2つ続ける)と指定します。

第2引数:空白セルの扱い

結合する範囲の中に「空白のセル」が含まれていた場合、それを無視して結合するか、それとも空白として扱うかを「TRUE」または「FALSE」で指定します。

  • TRUE(または 1):空白のセルを無視します。区切り文字が連続して表示されるのを防ぐことができます。
  • FALSE(または 0):空白のセルを無視せず、区切り文字を挿入します。

基本的には「TRUE」を指定して、空白セルを読み飛ばす設定にしておくのが便利です。

第3引数以降:テキスト

結合したい文字列が入力されているセルやセル範囲を指定します。
A1、A2、A3…のようにセルを個別に指定することもできますし、`A1:A5`のように範囲でまとめて指定することも可能です。範囲指定ができるのが、この関数の大きな特徴の一つです。

TEXTJOIN関数の活用例

実際のデータを使って、どのようにTEXTJOIN関数を使うのか、いくつかの例を挙げて説明します。

例1:セル範囲をカンマ区切りで結合する

セルA1からA5に、それぞれ異なる果物の名前(りんご、みかん、バナナ、ぶどう、メロン)が入力されているとします。これらをカンマ区切りで1つのセルにまとめたい場合は、以下のように入力します。
`=TEXTJOIN(“,”, TRUE, A1:A5)`
この数式を入力すると、結果として「りんご,みかん,バナナ,ぶどう,メロン」という文字列が返されます。
もしA3(バナナ)が空白だった場合、第2引数を「TRUE」にしているため、「りんご,みかん,ぶどう,メロン」となり、カンマが連続して不自然になることはありません。

例2:改行コードを区切り文字にする

区切り文字として、カンマやスペースだけでなく「改行」を指定することも可能です。これにより、複数のセルの内容を1つのセルの中で改行しながら表示させることができます。
改行を指定するには、「CHAR関数」を組み合わせて使用します。Windows版のExcelでは、改行コードは「CHAR(10)」で表されます。
`=TEXTJOIN(CHAR(10), TRUE, A1:A3)`
この数式を入力した後、数式が入力されたセルの書式設定で「折り返して全体を表示する」をオンにすると、A1、A2、A3の内容がそれぞれ改行されて表示されます。住所を都道府県、市区町村、番地などで分けて入力しているデータを、宛名ラベル用に1つのセルにまとめる際などに便利です。

他の結合方法との違いとメリット

文字列を結合する方法として、「&(アンパサンド)」を使う方法もよく知られています。例えば `=A1&B1&C1` のように入力します。
しかし、この方法で間にカンマを入れたり、空白セルを考慮したりしようとすると、`=A1&”,”&B1&”,”&C1`
のようになり、さらにIF関数を組み合わせて空白判定をするなど、数式が非常に長くなってしまいます。
TEXTJOIN関数を使うメリットは以下の点に集約されます。

  1. 範囲指定ができる:`A1:A10`
    のように範囲で指定できるため、結合するセルが多数ある場合でも数式が短くすっきりします。
  2. 区切り文字の一括指定:最初に区切り文字を1回指定するだけで、すべての文字列の間に適用されます。
  3. 空白セルの自動処理:「TRUE」を指定するだけで、空白セルによる区切り文字の連続を自動的に防いでくれます。

特に、データが増減する可能性のある表や、空白セルが混在するリストを扱う際に、その真価を発揮します。

まとめ

ExcelのTEXTJOIN関数を使って、複数のセルの文字列を特定の区切り文字で結合する方法をお伝えしました。
「区切り文字」「空白の扱い」「結合したい範囲」の3つを指定するだけで、複雑な条件処理なしにきれいな文字列を作成できる便利な関数です。
カンマ区切りのリスト作成や、CHAR関数と組み合わせた改行表示など、データの成形や加工作業において活用できる場面は多くあります。これまで「&」で繋いで数式が長くなってしまっていた方は、ぜひTEXTJOIN関数を取り入れて、作業の効率化を図ってみてはいかがでしょうか。