Excel使いこなしの基礎と応用


TEXTJOIN関数で複数のセル範囲の文字列を結合する

Excel2016から新たに加わった「TEXTJOIN関数」を使うと、「CONCATENATE関数」ではできなかった複数のセル範囲の文字列をつなげて表示させることができます。文字と文字をつなぐ区切り文字も自由に設定でき、数式も短くなって便利です。

目次


「TEXTJOIN関数」で表の文字を丸ごと一挙表示

TEXTJOIN関数の設定を下図の表で実行してみます。
TEXTJOIN関数で結合させるセル範囲
赤枠で囲った範囲の文字を連結。

結果を表示させるセルを選択して、「「数式」タブ「関数ライブラリ」の「文字列の操作▼」をクリックし、一覧から「TEXTJOIN」をクリック。
関数ライブラリの文字列操作の一覧からTEXTJOINをクリック

関数の引数」ダイアログボックスが開いたら、最初に「区切り文字」を設定します。ここはとりあえず「-ハイフン」にしておきましょう。
TEXTJOIN関数の引数ダイアログで区切り文字をハイフンに設定
次の引数「空のセルは無視」の欄には「TRUE」か「FALSE」を入れます。表には空のセルがあるので、ここは「1」を入力して「TRUE」を指定。(「FALSE」は「0」)
空のセルは無視をTRUEに設定
続いて、「テキスト1」の欄にカーソルを置いて、セル範囲をドラッグして指定します。
つなげるテキストのセル範囲をドラッグで選択
「OK」すると、セルにハイフンで連結された文字列が表示されます。この数式は「=TEXTJOIN("",TRUE,A2:C4)」となります。
結合した文字列の表示

区切り文字の種類と各文字列ごとに異なる区切りを入れる効率よい設定方法

区切り文字」には日本語も使えますし、空欄のままにすれば区切り無しで文字が連結されます。長めの文字列を入れて、自然な文章になるよう工夫することもできます。

スポンサーリンク

連結させる文字列ごとに「区切り文字」を変えて表示させるには、「区切り文字」をあらかじめ列のセルに入力しておきます。
区切り文字を各列の空いたセル内に入力
A列の区切り文字を「のパスタに」、B列の区切り文字を「サラダと」、C列の区切り文字を「スープが付いて」と入力。ダイアログボックスの「区切り文字」の引数欄にこの範囲を指定します。
入力した区切り文字のセル範囲を選択して指定
これで、A列にある文字列の後には「のパスタに」と続き、B列の文字列の後には「サラダと」と続くことになるわけです。

飛び飛びの位置にあるセル範囲の文字列をつなげる

ここで、まとまったセル範囲ではなく、飛び飛びにある複数のセルを選択して、その文字列を連結してみましょう。

スポンサーリンク

「空のセルは無視」は「FALSE」にして、「テキスト1」の欄にカーソルを置いて、つなげたいセルをControlキーを押しながらクリックしていきます。
つなげるテキストの入ったセルをControl+クリックで指定
「テキスト2」に移ると、「テキスト1」の結果が「#VALUE!」エラーになりますが、無視して続けます。

テキスト2」には価格の数字を表示形式を変えて入れたいので、「TEXT関数」を使います。名前ボックスから「TEXT」を選び、ダイアログボックスが開いたら、以下のように設定。▶「TEXT関数」の設定について詳しく
テキスト2の引数にTEXT関数を入れ子
「OK」すると、連結された文章が「ボロネーゼのパスタに和風サラダとポタージュスープが付いて¥1,450」と表示されました。
連結されたテキストが表示された
数式は「=TEXTJOIN(A6:C6,0,A4,B2,C2,TEXT(F3,"\#,##0"))

引数のテキストのセル指定を変えるか、数式を「=TEXTJOIN(A6:C6,0,A3,B4,C3,TEXT(F2,"\#,##0"))」と変えれば、「ボンゴレビアンコのパスタにシーザーサラダとコンソメスープが付いて¥1,250」という表示になるわけです。
連結させるテキストのセルを変更した表示結果

▶文字列を結合する「&」と「CONCATENATE関数」
▶数値や日付の表示形式を変換して文字列に置き換える「TEXT関数」

Officeで作れるもの