今回は、Excel(エクセル)で複数のセルに入力した文字列を結合して1つのセルに表示する方法を確認していきます。「&」記号でセルを繋げていく基本的な数式のほか、CONCAT関数、CONCATENATE関数、TEXTJOIN関数などを利用する方法があります。
本連載では、「よく使うけど忘れやすいMicrosoft Officeの操作」をキーワードに、Officeアプリケーションの使い方を解説していきます。記事の制作には、執筆時点で最新の状態にアップデートしたMicrosoft Office 2016を使用しています
文字列を結合して1つのセルに表示させたい
たとえば、住所を都道府県、市区町村、番地、ビル名といった項目ごとに入力した表があったとします。こうした表で、それぞれの項目の文字列を結合して1つの住所として表示させたいというケースはめずらしくないはずです。そこで今回は、セルに入力した文字列を結合させる基本的な方法を確認していきます。
セルとセルを「&」で繋いで数式を作成
まずは基本的な方法でセルの文字列を結合させてみます。結合した文字列を表示させたいセル(画面の例ではB2)を選択したら、数式バーに「=」と入力して結合させたい最初のセル(画面の例ではA6)をクリックして数式に反映させます(図1)。続けて「&」(アンド)記号を入力して次のセル(A7)をクリック(図2)、同様に結合したいセルを「&」で繋いで「=A6&A7&A8&A9&A10」という数式を完成させます(図3)。[Enter]キーで確定させると、A6~A10のセルに書かれた文字列が結合されて表示されます(図4)。
CONCAT関数で簡単に結合
複数のセルを1つ1つ「&」で繋げて数式を作成するのは意外と面倒な作業です。連続したセルを結合する場合にはCONCAT関数を利用するのがよいでしょう。結合した文字列を表示させたいセル(画面の例ではB3)を選択したら、数式バーに「=CONCAT(」と入力(図5)。結合したいA6~A10セルをドラッグして数式に反映させ、「)」で閉じて「=CONCAT(A6:A10)」という数式を完成させます(図6)。[Enter]キーを押すと、「&」で繋いだ方法と同様にA6~A10セルの文字列が結合されました(図7)。
CONCATENATE関数で結合する方法
複数セルの文字列を結合する場合、見やすいように結合する文字列と文字列の間に空きや記号を入れたいというケースもあります。ここでは文字列を結合する関数の1つであるCONCATENATE関数を使って、文字列間に半角空きを入れて結合する方法を紹介します。
結合した文字列を表示させたいセル(画面の例ではB4)を選択したら、数式バーに「=CONCATENATE(」と入力(図8)。続けて「A6," ",A7," ",A8," ",A9," ",A10)」と入力して数式を完成させます(図9)。「" "」部分はダブルクオーテーションで半角空きの文字を指定しています。[Enter]キーで確定させると、A6~A10セルの文字列が半角空きが入った形で結合されて、ベタで繋げるより見やすくなりました(図10)。
TEXTJOIN関数で簡単に空白や記号を入れる
結合する文字列と文字列の間に半角空きを入れる方法としては、TEXTJOIN関数を使うのもオススメです。TEXTJOIN関数は、「=TEXTJOIN([区切り文字],[引数(空のセルは無視)],[結合したい文字列]」という書式が基本となります。まずは、結合した文字列を表示させたいセル(画面の例ではB5)を選択し、数式バーに「=TEXTJOIN(" ",」と入力して半角空きを区切り文字に指定します(図11)。続けて「TRUE,」と入力して(図12)空のセルがあっても無視して結合するように指定を行い、結合したいA6~A10セルをドラッグして「=TEXTJOIN(" ",TRUE,A6:A10)」という文字列を完成させます(図13)。[Enter]キーで確定させると、文字列間に半角空きの区切りが入った形で結合されます(図14)
ちなみに、TEXTJOIN関数では好きな文字列を区切り文字として指定できます。たとえば「=TEXTJOIN("の",TRUE,A6:A10)」という数式を作成して「の」を区切り記号にすれば(図15)、文字列の間に「の」が挿入された文字列を表示させることが可能です(図16)。状況に応じて使い分けましょう。