【Excel】文字列を結合する方法、できない原因

エクセルで複数のセルの内容をアンパサンド(&)で結合する方法や、関数を使って範囲内のセルをまとめて結合する方法をご紹介します。区切り記号として改行を挿入することで、改行しながら文字列を結合する方法についても解説しているので、ぜひ参考にしてみてください。

スポンサーリンク

セル内の文字列を結合する 4 つの方法

エクセルで複数セルの内容を結合する方法

基本的に &=CONCATENATE関数<CONCAT関数<TEXTJOIN関数 の順に性能が高くなります。

CONCAT関数以下は区切り記号に関する引数がありませんが、結合する文字列として記号を挿入することは可能です。改行は、区切り記号として挿入します。

関数・演算子名範囲の指定区切り記号の指定バージョン
アンパサンド(&)不可能不可能Excel 2016以前でも使用可能
CONCATENATE関数不可能不可能Excel 2016以前でも使用可能
CONCAT関数可能不可能Excel 2019以降 または Microsoft 365
TEXTJOIN関数可能可能Excel 2019以降 または Microsoft 365

アンパサンド(&)で結合する方法

エクセルで文字列をアンパサンドで結合する方法

アンパサンド(&)は、& でつないだ複数の値をすべて連結する演算子です。例えば A2&B2 なら [A]と[B]を結合するので、[AB]になります。

エクセルで文字列をアンパサンドで結合する方法

文字列の間に区切り文字を挿入する場合は、二重引用符を付けて & でつなぎます。

例えば A2&” ”&B2 なら 2 つの文字列の間にスペースを挿入するので、返り値は[A B]です。

CONCATENATE関数で結合する方法

エクセルで文字列をCONCATENATE関数で結合する方法

CONCATENATE関数は、2 つ以上の文字列を 1 つの文字列に結合します。

例えば CONCATENATE(A2,B2,C2) なら 3 つの文字列を結合するので、返り値は[AAA]です。これは、アンパサンド(&)で文字列を結合した結果と同じになります。

CONCATENATE関数の構成要素:(文字列 1 [文字列 2], …)

CONCAT関数で結合する方法

エクセルで文字列をCONCAT関数で結合する方法

CONCAT関数は、複数の範囲や文字列のテキストを結合します。

例えば CONCAT(A2:C2) なら範囲で指定したセル内のテキストをまとめて結合するので、返り値は[AAA]です。テキストには幅と高さが 1 より大きい範囲も指定できます。

CONCAT関数の構成要素:(テキスト1, [テキスト2],…)

TEXTJOIN関数で結合する方法

エクセルで文字列をTEXTJOIN関数で結合する方法

TEXTJOIN関数は値または範囲内の値を結合し、各値の間に指定した区切り記号を挿入します。空のセルは無視には、空のセルを無視するかを論理値で指定します。

例えば TEXTJOIN(“,”,TRUE,A2:C2) ならカンマを挿入しながら結合するので、返り値は[A,A,A]です。

  • TRUE:空のセルを無視します。
  • FALSEまたは省略:空のセルを結合し、間に区切り文字を挿入します。

TEXTJOIN関数の構成要素:(区切り記号, 空のセルは無視, 文字列1, [文字列2, …])

スポンサーリンク

文字列を改行しながら結合する方法

エクセルで文字列を改行しながら結合する方法

複数セルの文字列を改行しながら1つのセルにまとめる場合、CHAR関数を使用します。

CHAR関数は指定した数値を、現在のユニコード表に該当する文字に変換します。改行に該当する数値は 10 なので、A2&CHAR(10)&B2 で文字間の改行が可能です。

セルの書式は[データ]タブから、[文字列を折り返して全体を表示する]に設定してください。

CHAR関数の構成要素:(数値)

エクセルで文字列を改行しながら結合する方法

TEXTJOIN関数の場合は、区切り記号に CHAR(10) をセットします。

例えば TEXTJOIN(CHAR(10),TRUE,A2:C2) なら各値の間に改行を挿入するので、大量のデータを改行しながらまとめることが可能です。

CHAR(10) は文字列ではなく関数なので、二重引用符は必要ありません。

スポンサーリンク

文字列を結合できない原因

文字列の結合がうまくいかない場合の解決方法を、CONCATENATE関数を例にしてご紹介します。次にご紹介する内容のほか、セルにエラー値が含まれる場合も結合できません。

日付が数字になる

エクセルで文字列の結合ができない原因

日付のセルを含めて結合すると、日付はシリアル値で返されます。

シリアル値:1900年1月1日 を「1」とする連番。

エクセルで文字列の結合ができない原因

TEXT関数を使うと、日付の表示形式を指定できます。

例えば CONCATENATE(A2,TEXT(B2,”m月d日”) なら、日付のセルを日付で返します。

TEXT関数の構成要素:(数値, 表示形式)

#NAMEエラーになる

エクセルで文字列の結合ができない原因

関数内に文字列を指定する場合、ダブルクォーテーションが必要です。

数式がそのまま表示される

エクセルで文字列の結合ができない原因

セルの表示形式が文字列になっている場合、入力した数式がそのまま表示されます。

エクセルで文字列の結合ができない原因

ホームタブから表示形式を[標準]に設定し、[Enter]で数式を入れなおします。

タイトルとURLをコピーしました