コンピューター

文字列を連結したい!3つの関数を使った簡単な方法を解説します

例えば、郵便番号「123-4567」と入力してある文字列の頭に「〒」を付けたい、ということはありませんか?Excelでは文字列の連結は関数を使えば簡単に行えます。

文字列の連結で使える関数は、新関数を含め以下の3つがあります。

■CONCATENAE

■CONCAT(新関数)

■TEXTJOIN(新関数)

今回は上記3つの関数を使った連結方法を解説します。

CONCATENATE関数を使って文字列を連結

文字列を連結する関数として、以前より使われているのがCONCATENATE(コンカティネート)関数です。

この関数を使った数式はとてもシンプルで、連結したい文字列を含むセルを指定するだけ。早速、さきほど例にあげた郵便マークと郵便番号を連結させてみましょう。

=CONCATENATE(“〒”,B5)

一番上のセルに入力した数式を下のセルへコピペします。

〒が文字列の頭に追加されました。
同じ方法で、数字を連結させることもできますが、数字の場合はダブルクォーテーションで囲む必要はありません。

数字以外の文字や記号を関数で使用したい場合のみ、ダブルクォーテーションで囲むようにしてください。

また上図のように、シート内に連結したい文字列などがあれば、セルを直接指定して連結することもできます。

その場合、式の”文字列”欄の最初に「〒」のセルを指定すればOKです。

=CONCATENATE(“$C$2”,B5)

連結する文字列がひとつの場合は、絶対参照で指定することを忘れないようにしてくださいね。

参考記事:Excelの基本「絶対参照・相対参照」を解説します

新関数「CONCAT」を使って文字列を連結

続いて、Excel2016以降から新しく追加された、CONCAT(コンカット)関数の使い方を解説します。

CONCATENATE関数では、いくつかのセル内の文字列を連結させたい場合、ひとつずつセルを指定しなければなりませんでした。

CONCAT関数では、”連結する文字列を含むセル”を範囲指定で設定できます

ではセルごとに「都道府県、市区町村、番地」が入力されているリストから、文字列を連結させて一つの住所を完成させてみましょう。

=CONCAT(B3:D3)

一番上のセルに入力した数式を下のセルへコピペします。

CONCATENATEを使用した数式と比べて違いをみてみましょう。

CONCATENATE(B3,C3,D3) セルをひとつずつ指定

CONCAT(B3:D3) セルを範囲指定

連結したいセルが範囲指定できる場合は、CONCAT関数の方がシンプルで分かりやすいですね。どちらも結果は同じになるので、ご自身で使いやすい関数を使ってみてください。

新関数「TEXTJOIN」を使って文字列を連結

最後に紹介するのは、こちらもExcel2016から追加された新関数「TEXTJOIN」です。
連結する文字列の間に、区切り文字や記号を入れたいという場合におすすめの関数です。

では例として、下図の文字を「-」の記号をはさんで連結させてみましょう。

=TEXTJOIN(“-“,TRUE,A1:C3)

区切り文字  :区切りとして使いたい文字や記号。ダブルクォーテーションで囲む
空のセルは無視:TRUE(空白セルを無視)または FALSE(空白セルは無視しない)
テキスト1   :連結したい文字を含むセルを範囲指定

空白セルは無視としたので、指定した範囲内の文字で連結されました。
文字の連結は、一番上の行から左→右の順番で連結されていきます。

ちなみに空白セルを無視せずに、「FALSE」とした場合は、
「A1–C1–B2–A3–C3」という結果になります。

区切り文字や記号を、連結に何度も使用する場合はTEXTJOINは便利な関数ですので、CONCATENATE、CONCATと使い分けてみてください。