CONCATENATE、CONCAT、TEXTJOIN: 文字列結合関数の比較とTEXTJOIN推奨

CONCATENATE、CONCAT、TEXTJOIN: 文字列結合関数の比較とTEXTJOIN推奨

「Excelで効率よく文字列を結合する方法が知りたい」「どの関数を使えば最適なのか迷っている」という声をよく耳にします。

結論として、TEXTJOIN関数が最も柔軟で便利です。

この記事では、CONCATENATE、CONCAT、TEXTJOINの各関数の違いと使い分けについて詳しく解説します。
これにより、各関数の特徴を理解し、最適な方法で文字列を結合できるようになります。

3つの関数ともに、Microsoft EXCELの「文字列操作関数」のカテゴリに属します。

CONCATENATEとCONCATとTEXTJOIN関数の違いと使い分け

各関数の違い

CONCATENATE、CONCAT、およびTEXTJOINは、いずれもEXCELで文字列を結合するための関数です。
しかし、それぞれの機能には違いがあり、進化しています。以下で詳細を説明します。

引数の違い

CONCATENATE関数とCONCAT関数は、構文の違いがありませんが、TEXTJOIN関数はやや複雑です。
CONCATENATE→CONCATE→TEXTJOINにかけて、機能アップが見えます。

関数名引数の数 範囲指定 区切り文字 空白セルの無視 構文URL
CONCATENATE最大255×××=CONCATENATE(文字列1, 文字列2, …, [文字列225])
※[]は省略可能な引数
詳細記事 
CONCAT最大255××=CONCAT(テキスト1, [テキスト2], …, [テキスト225])
※[]は省略可能な引数
詳細記事
TEXTJOIN最大252=TEXTJOIN(区切り文字, 空のセルは無視, テキスト1, [テキスト2], …)
※[]は省略可能な引数
詳細記事

機能の違い

CONCATENATEからCONCATE、さらにTEXTJOINへとバージョンアップし、機能もパワーアップしています。

関数名基本的な機能利用可能なExcelバージョン
CONCATENATE文字列を単一セルで結合するExcel 2010以降
CONCAT文字列を複数セルを一挙に結合できるExcel 2016以降
TEXTJOIN区切り文字を指定し、空白セルを無視して文字列を結合できるExcel 2019以降

{各関数の違い}から見える、使い分けのガイドライン

関数名使用シーン特徴
CONCATENATEレガシーなExcelバージョンを使用している場合シンプルな文字列結合、最大255引数
CONCAT範囲を指定して一括で文字列を結合したい場合範囲指定可能、引数数の制限なし
TEXTJOIN文字列を区切り文字で結合したい場合、空白セルを無視したい場合区切り文字指定、空白セル無視可能

基本方針

TEXTJOIN関数は上位互換のため、CONCATとCONCATENATEでできることはすべてTEXTJOINで可能です。

TEXTJOINを使用すれば、区切り文字を指定して文字列を結合したり、空白セルを無視したりすることができます。
引数の指定で調整することで、CONCATとCONCATENATEの機能もカバーできます。

そのため、TEXTJOINを使っておけば問題ないです。

CONCATENATEからCONCATE、さらにTEXTJOINへとバージョンアップされたことで、機能も自然に向上していますよね。

どうしても、、、シンプルな操作が好ましい場合

TEXTJOINは機能が豊富な分、やや複雑になることもあります。

このため、文字列を区切り文字で結合したり、空白セルを無視する必要がない場合には、

CONCATを使うという選択も有効です。

CONCATENATEを避ける

CONCATENATEは一つずつセルを選択しなければならず、多くのセルを結合する際には非常に手間がかかります。

CONCATやTEXTJOINでは複数のセルをまとめて選択できるため、効率的です。

そのため、特に理由がない限り、CONCATENATEの使用は避け、より便利なCONCATまたはTEXTJOINを使用することをお勧めします。

CONCATENATEは単なる下位互換なので、使わないほうがいいですよ。

最後に

CONCATENATE、CONCAT、TEXTJOIN関数の違いと使い分けを理解することで、Excelでの作業効率が大幅に向上します。

TEXTJOIN関数は上位互換として、他の2つの関数でできることをすべてカバーし、
さらに区切り文字の指定や空白セルの無視といった便利な機能も備えています。

そのため、TEXTJOINを採用すれば安心です。