CONCATENATE関数:文字列を結合する

CONCATENATE 関数は Excel で用意されている関数の一つで、引数に指定した複数の文字列を結合し一つの文字列にして返します。ここでは Excel における CONCATENATE 関数の使い方について解説します。

※ Excel では CONCATENATE 関数の他に文字列を結合する方法がいくつか用意されています。詳しくは「文字列演算子(&)を使った文字列の結合」を参照されてください。

※ Excel の対応バージョン : 365 web 2021 2019 2016 2013 2010 2007

(Last modified: )

CONCATENATE関数の使い方

CONCATENATE 関数は引数に指定した複数の文字列を結合し、一つの文字列として返します。

CONCATENATE(文字列1,文字列2,...)

引数には文字列または文字列が含まれるセルを指定します。文字列を指定する場合はダブルクォーテーションで囲んで指定してください。。最大で 255 個の引数を指定できます。文字列だけでなく数値や日付の値を指定することもできます。

例えば引数として "令和" , 3 , "年" , 5 , "月" を指定した場合、結果として "令和3年5月" になります。

=CONCATENATE("令和",3,"年",5,"月")
--> 令和3年5月

日付や時刻の値を引数に指定することもできますが、日付の値は内部的に保管されているシリアル値として結合されるのでご注意ください。

CONCATENATE関数のサンプル

それでは実際に CONCATENATE 関数を使ってみます。 Excel のシートに結合の対象となる文字列を次のように入力しました。

CONCATENATE関数のサンプル(1)

取得した文字列を表示する D3 セルを選択し、次のように入力しました。 CONCATENATE 関数で今回は 2 つセルに入力されている文字列を結合するため、 B3, C3 セルを指定しました。

=CONCATENATE(B3,C3)

CONCATENATE関数のサンプル(2)

Enter キーを押すと、 D3 セルには次のように表示されます。

CONCATENATE関数のサンプル(3)

B3, C3 セルに入力されている文字列を結合し 1 つの文字列にしてから D3 セルに表示しました。

同じように D4 セルから D7 セルに対しても CONCATENATE 関数を入力しました。

CONCATENATE関数のサンプル(4)

数値や日付と結合する場合の注意点

CONCATENATE 関数では文字列だけでなく数値や日付の値なども結合することができますが、いずれに場合もセルに設定されている表示形式が反映されない値として結合されるため注意が必要です。例として Excel のシートに結合の対象となる文字列を次のように入力しました。

数値や日付と結合する場合の注意点(1)

D3 セルに CONCATENATE 関数を入力し、文字列が入力された B3 セルと数値が入力された C3 セルの値を結合しました。

数値や日付と結合する場合の注意点(2)

Enter キーを押すと D3 セルには次のように表示されました。 "売上34,250" ではなく "売上34250" と結合されています。 C3 セルに設定されていた表示形式が反映されず、値として保管されている 34250 と結合されたためです。

数値や日付と結合する場合の注意点(3)

同じように D4 セルと D5 セルに CONCATENATE 関数を入力し、文字列と日付や時刻の値を結合しました。

数値や日付と結合する場合の注意点(4)

日付や時刻の値と結合する場合は、表示されていた値ではなく日付と時刻が内部的に値を保管するのに使用しているシリアル値が結合されています。 2021/10/25 を表すシリアル値は 44494 で、 16:22:15 を表すシリアル値は 0.682118055555556 です。

※ 日付や時刻に関するシリアル値については「Excelにおける日付と時刻のシリアル値とは」を参照されてください。

日付や時刻の値を文字列に変換してから結合する

表示形式が設定された数値や、シリアル値として保存されている日付や時刻の値を表示されたまま結合したい場合には、いったん TEXT 関数を使って数値や日付の値を文字列に変換する必要があります。

例えば表示形式が設定された数値を文字列に変換するため、 D3 セルに次のように入力しました。

=TEXT(C3,"#,###0")

日付や時刻の値を文字列に変換してから結合する(1)

Enter キーを押すと、 D3 セルには次のように表示されます。 C3 セルに入力されていた数値を指定した表示形式を使った文字列に変換しました。

日付や時刻の値を文字列に変換してから結合する(2)

では CONCATENATE 関数を使って B3 セルと D3 セルの値を結合してみます。

日付や時刻の値を文字列に変換してから結合する(3)

日付や時刻の値を文字列に変換してから結合する(4)

表示形式が設定された状態で結合することができました。

次に日付や時刻などシリアル値で保管されている値を文字列に変換してから結合してみます。 D4 セルに次のように入力しました。

=TEXT(C4,"yyyy/m/d")

日付や時刻の値を文字列に変換してから結合する(5)

Enter キーを押すと、 D4 セルには次のように表示されます。 C4 セルに入力されていた日付の値を指定した表示形式を使った文字列に変換しました。

日付や時刻の値を文字列に変換してから結合する(6)

また D5 セルに次のように入力しました。

=TEXT(C5,"h:mm:ss")

日付や時刻の値を文字列に変換してから結合する(7)

Enter キーを押すと、 D5 セルには次のように表示されます。 C5 セルに入力されていた時刻の値を指定した表示形式を使った文字列に変換しました。

日付や時刻の値を文字列に変換してから結合する(8)

では CONCATENATE 関数を使って B4 セルと D4 セル、そして B5 セルと D5 セルの値を結合してみます。

日付や時刻の値を文字列に変換してから結合する(9)

日付や時刻の値を文字列に変換したあとで結合することができました。

TEXT 関数の使い方については「TEXT関数:対象の数値に指定した表示形式を設定した文字列を取得する」を参照されてください。

-- --

Excel における CONCATENATE 関数の使い方について解説しました。

( Written by Tatsuo Ikura )

プロフィール画像

著者 / TATSUO IKURA

これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。