今回は、Excelの便利な関数の一つである「TEXTJOIN関数」の使い方について初心者にもわかりやすく解説します。TEXTJOINを使うことで複数のセルのテキストを一つのセルにまとめることが出来ます。また、範囲選択の中に空白がある場合は、空白を無視するなど柔軟性が高いので、さまざまな業務に活用できます。それでは実例を交えながらTEXTJOIN関数をマスターしましょう!
自己紹介
IT業界でのキャリアを活かし、業務効率化に欠かせないMicrosoft365や便利ツールを紹介しています。少しのコツで膨大な可能性を最大限引き出すためのヒントやテクニックを提供し、読者のビジネスパフォーマンス向上に貢献することを目指しています!
TEXTJOIN関数とは?
TEXTJOIN関数とは、複数のセルの内容を任意の区切り文字を使って結合するExcelの関数です。手動で文字を結合する手間を省けるのがポイントです。ほかにもExcelでセルを結合する関数としてCONCAT関数があります。そのCONCAT関数とTEXTJOIN関数の違いもご紹介していきます。
TEXTJOIN関数の基本構文
=TEXTJOIN(区切り文字, 空白のセルを無視, 文字列1,…)
区切り文字
┗セルとセルを繋ぐ文字を指定する(例「,」「-」)
空白のセルを無視
┗空白のセルを無視する場合はTRUE、空白セルを含める場合はFALSE
文字列1
┗結合する文字列や範囲を指定する(例「A1:A10」など)
関数のポイントとしては、空白のセルを無視するor無視しないを指定できる点です。実際にTEXTJOIN関数の使い方を簡単な例を交えて確認してみましょう!
TEXTJOIN関数の使い方
たとえば、次のような果物が入力されているデータがあるとします。それぞれの行に記載がある果物①~③をE列に結合してみます。ただし条件として果物と果物の間には、「/」を入れ、空白がある場合は無視するとします。
=TEXTJOIN( "/", TRUE, B3:D3 )
※関数のコピペは数式バーに入力してください
CONCAT関数とTEXTJOIN関数の違いとは?
「CONCAT関数」と「TEXTJOIN関数」は、どちらも複数のセルを結合する点では同じです。二つの関数の違いをこちらの章では紹介します。簡単に理解していただくためにCONCAT関数とTEXTJOIN関数の特徴を表にしてみました!ぜひ確認してみてください。
CONCAT関数 | TEXTJOIN関数 | |
区切り文字の指定 | 一つひとつ手動で挿入 | 一つ設置したら後は自動挿入 |
空白セルの処理 | 空白セルもそのまま結合 | 空白を含めるor含めない両方可能 |
利便性 | ただ結合したい場合に最適 | 区切り文字や空白処理がある倍に最適 |
実例で学ぶTEXTJOIN関数の活用法
TEXTJOIN関数の基本構文も理解した後は、実務で活用できる例をもとにTEXTJOIN関数を使ってみましょう。ここでは顧客の住所をTEXTJOIN関数で結合していきます。
住所をTEXTJOIN関数で結合しよう
次のような都道府県、市区町村、丁目番地号、マンション名が入力されているセルがあるとします。都道府県~マンション名までF列にTEXTJOIN関数を使用して住所を1つのセルにまとめてください。ただし、区切り文字は無しで空白セルは無視するとします。
=TEXTJOIN( "", TRUE, B3:E3 )
※関数のコピペは数式バーに入力してください
TEXTJOIN関数の応用テクニックを紹介
ここからはTEXTJOIN関数の応用として、私がよく実務で使用していた方法をご紹介します。具体的には、○○がセル結合する範囲に入っている場合は、空白のセルを省いて結合します。条件に合う行のみ文字を繋げることが出来るので非常に便利です。どんな業務で活用できるのかも紹介しておきます。
- 条件付きレポートの作成
- テキスト処理のオペ化
- 顧客情報や売上表のデータ整理
TEXTJOIN関数とIF関数の組み合わせ方法
TEXTJOIN関数とIF関数を組み合わせて使用することで、「条件に合えば文字を繋げる」という指示ができます。条件は業務によって違いますが、基本的には結合範囲の中に特定の文字が入力されている場合は、TEXTJOIN関数を実行するということです。
実際の例を見つつ進めていきます。まずは下記のデータを用意しました。
ぞれぞれの行(3~5行目)に”りんご”が入力されていれば、E列にTEXTJOIN関数を実行してくだものを「,」で繋げていきたいと思います。この場合、TEXTJOIN関数の文字列にIF関数を入れていきます。それぞれを組み合わせた基本的な構文はコチラになります。
=TEXTJOIN(区切り文字, 空白のセルを無視, IF(論理式, 真の場合, 偽の場合))
まずはExcelの論理値の数値について理解していただく必要があります。難しいことはなく、TRUEは1でFALSEは0と頭に入れておけば問題ないです。
上記のTRUEは1でFALSEは0を活用して、IF関数の論理式にB=3にりんごが入っていればTRUEでC3とD3も同様に設定します。これらの合計が0以上であれば、真の場合に返す値を文字を繋げる範囲(B3:D3)で返してあげればOKです。合計が0の場合は偽の場合を返すため「””」で設置してあげます。
上記の手順を進めることで各行ごとに”りんご”が入っていれば文字を繋げ、”りんご”が入っていない場合は文字を繋げることなく空白を表示することができます。では、完成系を見ていきましょう。
=TEXTJOIN(", ", TRUE, IF((B3="りんご")+(C3="りんご")+(D3="りんご")>0, B3:D3, ""))
※関数のコピペは数式バーに入力してください
まとめ
TEXTJOIN関数の基本的な使い方と、私が実際に活用している応用のテクニックまでをご紹介しました。特に注文くしてほしいポイントはTEXTJOIN関数とCONCAT関数の比較についてです。
TEXTJOIN関数だけで文字を連結することは可能ですが、業務の内容によってはCONCAT関数のほうが早い場合があります。たとえば、ただ単に複数のセルを繋げたい場合は引数が簡単なCONCAT関数が最適だと私は思います。
皆さんの業務の内容によって関数を使い分けてほしいです。この記事で読者の業務効率がUPすることを願っています!今回も最後まで読んでいただきありがとうございます。