Excelでテキストを連結するCONCATENATE関数とCONCAT関数の使い方

Microsoft Excelでデータを使用する場合、複数のセルのテキストを組み合わせて、よく整理され包括的なデータセットを作成することがよくあります。幸い、CONCATENATEやCONCATなど、この目的のために利用できる関数がいくつかあります。

CONCATENATEとCONCATのどちらも、Excelでさまざまな値や文字列をマージできるわかりやすい関数です。似ていますが、2つの間には1つの重要な違いがあります。各関数について詳しく見て、さまざまなシナリオに最適なものを判断しましょう。

ExcelでCONCATENATE関数を使用する方法

ExcelのCONCATENATE関数は、複数の文字列を1つのセルに結合します。2つ以上のセルの値、定数、またはテキスト文字列をマージできます。CONCATENATEの構文は次のとおりです。

=CONCATENATE(text1, [text2], [text3], ...)

ここで、text1text2text3などは、結合するセルの参照またはテキスト文字列を表します。CONCATENATE関数には最大255個のテキスト引数を含めることができます。テキスト文字列を使用している場合は、文字列を引用符(" ")で囲みます。

テキスト文字列と数値を組み合わせる場合は、数式結果の混乱を避けるために、さまざまな引数の間にスペースを含めることが重要です。テキスト文字列にはスペース、句読点、記号を含めることができます。

これは、TEXTJOIN関数はカンマやタブなどの特定の区切り文字で値を自動的に区切ることができるため、CONCATENATEとCONCATの共通の欠点です。

CONCATENATE関数の簡単な使用例は、クライアントの姓、ミドルネーム、名を入力して、フルネームを出力することです。たとえば、上記のワークシートでは、次の数式がフルネームを返します。

=CONCATENATE(A2, B2, C2)

この数式では、CONCATENATEはA2B2C2の名前を取り、それらを連結します。CONCATENATEは区切り文字をサポートしていないことに注意してください。したがって、名前が連結されないようにするには、元のセルの各名の後にスペースを含めます。

CONCATENATEのもう1つの使用例は、さまざまなセルの情報を要約することです。さまざまなアイテムに関する情報を含むワークシートがあるとします。CONCATENATEを使用して、各アイテムに関する情報を組み合わせて、結果をまとめることができます。

上記のワークシートを考えてみましょう。ここでは、いくつかの製品、価格、販売済みユニット数、販売目標、製品タグ、販売目標に関するステータスを一覧表示します。CONCATENATE関数を使用して、このすべてのデータを1つの文章にまとめることができます。

=CONCATENATE(A2, " from ", E2, " category has sold ", C2, " units for a total of $", B2*C2, ". The sale target was $", D2, ". ", F2, "." )

この長い数式は本質的に単純です。すべての引数は完全な文章の一部です。CONCATENATE関数は、さまざまなセルの値を結合し、その間にテキストを追加して、文章を作成します。

次に、元の列を非表示にして、スプレッドシートをすっきりさせることができます。

ExcelでCONCAT関数の使い方

Excel 2019以降のバージョンで使用できるCONCAT関数は、CONCATENATEの改良版です。CONCAT関数の構文は次のとおりです。

=CONCAT(text1, [text2], [text3], ...)

CONCATENATEと同様に、text1text2text3などは、結合されるセルの参照またはテキスト文字列を表します。CONCATの主な利点は、範囲と配列をより効率的に処理できることです。

CONCATENATEとは異なり、CONCAT関数は各引数に明示的なセルの参照を必要としません。代わりに、セルの範囲または配列を直接指定できます。これにより、大きなデータセットを扱う場合、数式のサイズと複雑さが大幅に削減されます。

前の例と同じように、Excelワークシートでクライアントの姓、ミドルネーム、名を入力するには、次の数式を使用します。

=CONCAT(A2:C2)

CONCATENATE関数と同様に、この数式はA2:C2の名前の値を取り、それらを連結してフルネームを表示します。ここでの違いは、それぞれを個別に参照するのではなく、値の範囲を指定できることです。これは、以下のワークシートでより強調されています。

このサンプルワークシートは、架空の自動車メーカーに属しています。各車には、車両のさまざまな側面に関する情報を含むモデルコードがあります。モデルコードはさまざまなコードで構成されています。CONCAT関数を使用して、コードをすばやく組み合わせて、1つの短い数式でモデルコードを形成できます。

=CONCAT(B1:B7)

CONCAT関数はB1:B7の値を取り、それらを連結して各車のモデルコードを形成します。CONCATENATEを使用した場合は、同じ結果を得るために以下の長い数式が必要になります。

=CONCATENATE(B1, B2, B3, B4, B5, B6, B7)

CONCATENATEとCONCAT:どちらを使用すべきか?

古いバージョンのExcelを使用している場合は、CONCATENATEはテキスト値をマージするための信頼できる選択肢です。しかし、その場合でも、アンパサンド(&)記号はCONCATENATEと同じ結果を簡単に得ることができます。実際、以下の数式はすべて同じ結果を生成します。

=A1&A2&A3
=CONCATENATE(A1, A2, A3)
=CONCAT(A1:A3)

CONCATENATEの欠点の1つは、独自の機能がないことです。示したように、アンパサンドはCONCATENATEと同じことができます。もう1つの問題は、関数の名前自体が長すぎることです。アンパサンドの数式とCONCATENATEの数式を比較して、自分で確認してください。

これらの制限に対処するために、ExcelはCONCATを導入しました。CONCAT関数はCONCATENATEと同じことができますが、範囲と配列でも使用できます。これにより、CONCATはCONCATENATEとアンパサンドよりも優れています。そのため、使用しているExcelのバージョンがCONCATをサポートしている場合は、CONCATENATEではなくCONCATを使用することをお勧めします。

CONCATの短い名前と範囲で操作できる機能により、数式が短くなり、ナビゲートしやすくなります。ただし、テキスト文字列を結合することが目的の場合は、区切り文字をサポートしていないため、CONCATとCONCATENATEの両方を使用するのは困難です。テキスト文字列をマージするにはTEXTJOIN関数の方が適しています。

MicrosoftはCONCATENATEをCONCATに置き換えることを目指しているため、CONCATの使用に慣れることをお勧めします。ただし、Excelは古いExcelファイルとの互換性のために、古いCONCATENATEを引き続きサポートします。

皮肉なことに、GoogleスプレッドシートのCONCATENATE関数は範囲と配列で操作できるため、GoogleスプレッドシートのCONCATとまったく同じです。その存在の唯一の目的は、ExcelファイルをGoogleスプレッドシートにインポートした場合の古いExcelファイルとの互換性です。

CONCATENATEとCONCATでExcelのデータの統合を効率化

CONCATENATEとCONCATは、テキスト文字列を結合してまとまりのあるデータセットを作成できる2つのExcel関数です。これらの関数を使用して、セルの値、定数、またはテキスト文字列をマージし、さまざまなセルの情報をまとめることができます。

CONCAT関数は範囲と配列をより効率的に処理でき、CONCATENATEよりも構文が短いため、ほとんどのユーザーにとって好ましい関数です。ただし、古いバージョンのExcelを使用している場合は、アンパサンドを使用して値を結合したくない場合、CONCATENATEは依然として信頼できる選択肢です。

どちらの関数を選択する場合でも、セルを結合することは、データをまとめたり、新しい連結値を生成したりするための効率的な方法です。セルを組み合わせると、ワークシートのスペースを節約し、テキスト文字列を挿入することで結論を導きやすくなります。