Excel(エクセル)の1つのセルに”京都府”、もう一つのセルに”京都市左京区”が入力されている時に、文字と文字を結合して”京都府京都市左京区”と住所を一つのセルに纏めたい時はありませんか?
今回の記事は、『入力された文字と文字を関数で結合する4つの方法』を解説します。
文字列の間にスペースや記号を入力することも可能ですので、参考にしてください。
まずは文字を結合する関数を選ぶ
文字と文字をどのように結合するかによって利用する関数を選択しましょう。
今回紹介するのは、以下の4つの関数(演算子含む)です。
関数の使い方はそれぞれの見出しで詳しく紹介しますので、まずはどの関数が使えそうかを検討してみてください。
おすすめの関数から順番に紹介しているので、分からないければCONCAT関数の利用を検討してみてね。
CONCAT関数(コンカット)
CONCAT関数は、「B2:D2」のようにセル範囲を指定して文字列を結合することも可能なので、引数の設定がすごく簡単です。
文字列の間にスペースや記号も挟むことも可能です。
ただし、Exce2019以降やOffice365のバージョンでしか利用できない最近出た関数なので、バージョンが古いExcelを利用している方は、残りの3つから利用する関数を選んでください。
「&」演算子(アンド)
「&」演算子での文字の結合は、一番利用されているスタンダードな文字列の結合方法です。
もちろん、文字列の間にスペースや記号も挟むことも可能です。
ただし、CONCAT関数のように結合する文字をまとめて指定出来ないので、数式を作成するのに少し手間がかかるかもしれません。
CONCATENATE関数(コンカティネート)
CONCATENATE関数は、1つ目に紹介したCONCAT関数の一世代前の関数です。
エクセルのどのバージョンでも利用できる一方、CONCAT関数のように、「B2:D2」のようなセル範囲を設定出来ない分、利便性は見劣りします。
また、この関数は今後無くなるかもしれないと噂されているので、そういう点でも利用はあまりお勧めしません。
TEXTJOIN関数(テキストジョイン)
TEXTJOIN関数は、同じ区切り記号を使って文字列を結合するときに便利な関数です。
設定する引数が多いので、”+”や”,”など同じ記号で文字を区切りながら結合したいときに利用しましょう。
文字をCONCAT関数で結合する方法
CONCAT関数(コンカット)で文字を結合する方法を紹介します。
前段でご紹介したとおり、Exce2019以降やOffice365のバージョンでしか利用できない関数です。
まず、関数の構文と引数は以下のとおりで、文字の入ったセルを指定するだけのシンプルなものです。
=CONCAT(文字列1,文字列2・・・文字列253)
手順1.CONCAT関数を挿入
以下のように、CONCAT関数を挿入します。
隣接しているセルを結合する場合は、「B3:D3」のように引数を設定出来ます。離れている場合は、「=CONCAT(B3,D3,F3)」というように、コンマを挟みながら一つずつセルを指定してください。
=CONCAT(B3:D3)
長方形のセル範囲を指定すると、Zの書き順に合わせても文字が結合されるよ。
手順2.ENTERで確定し、他のセルにコピペ
ENTERで確定すると、3つのセルの文字が結合されます。
結合する文字と文字の間にスペースや記号を挟みたい場合は、引数に「” ”(スペース)」や「”、”」を挟みましょう。
=CONCAT(B3," ",C3," ",D3)
文字を『&』演算子で結合する方法
「&」演算子で文字を結合する方法を紹介します。
「&」演算子での文字の結合は、一番簡単でスタンダードな文字列の結合方法です。
使い方は、文字列と文字列の間に「&」演算子を挟むだけです。
=文字列&文字列&・・・・&文字列
スペースを挟む場合は、以下のように、「&」演算子を挿入し文字を結合します。
=B3&" "&C3
文字をCONCATENATE関数で結合する方法
CONCATENATE関数(コンカティネート)で文字を結合する方法を紹介します。
前段でご紹介したとおり、CONCAT関数の方が利便性が高いので、Exce2016以前のバージョンのエクセルを利用されている方だけこの関数の使用を検討してください。
まず、関数の構文と引数は以下のとおりで、文字の入ったセルを指定するだけのシンプルなものです。
=CONCATENATE(文字列1,文字列2・・・文字列255)
CONCAT関数のように、「B3:D3」のようなセル範囲の指定は出来ないので、結合するセルを1つずつ引数に指定しましょう。
=CONCATENATE(B3,C3,D3)
スペースを挟む場合は、以下のように、「” ”」を引数に設定し文字を結合します。
=CONCATENATE(B3," ",C3," ",D3)
文字をTEXTJOIN関数で結合する方法
TEXTJOIN関数(テキストジョイン)で文字を結合する方法を紹介します。
TEXTJOIN関数は、同じ区切り記号やスペース(空白)を複数使って文字列を結合するときに便利な関数です。
=TEXTJOIN(区切り文字,空のセルの処理,文字列1,文字列2・・・)
引数「区切り文字」:結合時に挟みたい区切り文字を指定します。「” ”(スペース)」「”,”」などを設定します。
引数「空のセルの処理」:論理値「TRUE」もしくは「FALSE」を指定します。次の引数[文字列]で空白のセルを指定した場合、「TRUE」は無視され、「FALSE」は空白の文字列も結合して区切り記号を挿入します。
引数「文字列」:結合する文字列を指定します。「B3:D3」のようなセルの指定方法も可能です。
それでは、実際にTEXTJOIN関数を使って文字列を結合してみましょう。
下の表でE3セルには、以下の関数が挿入されていて、A、B、Cの文字が「+」の区切り文字が挟まって結合されています。また、「&」演算子を使って、セルの先頭に「=」の文字も挿入しています。
="="&TEXTJOIN("+",FALSE,B3,C3,D3)
論理値「TRUE」と「FALSE」の違いは、下の図のように空白のセルが挿入されている場合、「TRUE」は無視され、「FALSE」は空白の文字列も結合して区切り記号を挿入します。
(おまけ)フラッシュフィルで結合する方法
文字を結合する4つの方法を紹介しましたが、簡単な結合であれば関数を使用しなくても可能です。
それは、フラッシュフィルのショートカットキー、「Ctrl+E」を利用することです。
フラッシュフィルとは、Excelが入力されたデータから、規則性を自動的に認識して実行してくれる機能です。
まず、下の図のように、一番上のリストだけ手入力で文字を結合します。スペースは入れても入れなくても大丈夫です。
D3~D7のどれかのセルを指定した状態で、「Ctrl」キーと「E」キーを同時押しすることで、氏名を結合することが出来ます。
このフラッシュフィルは結合以外にも様々な場面で利用出来るので、ぜひ利用してみてください。(以下のリンクから参照してください。)