リンクユニット

Windows 10 & Office 2016 Excel 2016

複数の文字列を結合してひとつの文字列にするには

投稿日:2017年4月9日 更新日:

Excelで1つのセルに他のセルの文字列を結合した文字列を表示する方法を紹介します。

4つの方法を紹介しますので、使用環境に合った方法で操作してみてください。

Excel2013以降であれば、フラッシュフィルがお勧めです。

フラッシュフィル

参考Excel2019では、CONCAT関数TEXTJOIN関数 が追加されました。

関数や演算子で設定していると、参照元の値が変更になっても自動的に変更されますが、フラッシュフィルでは自動的に変更はされません。どちらを選択した方がいいのかは、使用する環境によって選択してください。

[&](アンバサンド)で結合する


下のような表があります。

セル[E2]にセル[B2]と、セル[C2]と、セル[D2]の文字を結合した文字列を表示します。

サンプル表

セル[E2]を選択して、「=B2&C2&D2」と入力します。

もちろん、セル番号はクリックして挿入して構いません。

数式バーに、「=」を入力、セル[B2]をクリック、「&」を入力、セル[C2]をクリック、「&」を入力、セル[D2]をクリックですね。

そして、この数式をコピーします。

ドラッグでもいいですし、フィルハンドルをダブルクリックでもいいです。

この方法については、以下のページでも解説しています。

セルとセルの文字列をつなぐには

数式

CONCATENATE関数を使う

関数を使う方法です。

セル[E2]を選択した状態で、[数式]タブをクリックして、[関数ライブラリ]グループにある[文字列操作]から[CONCATENATE]をクリックします。

「コンカティネイト」と読みます。

ポップヒントには、下のように記されています。

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

複数の文字列を結合して1つの文字列にまとめます。

CONCATENATE関数

クリックすると、下のように[関数の引数]ダイアログボックスが表示されます。

関数の引数ダイアログボックス

[文字列1]のテキストボックスにカーソルがあることを確認して、セル[B2]をクリックします。

[文字列1]のテキストボックスにはセル[B2]が入ります。

続けて、同じように操作して、[文字列2]のテキストボックスには、セル[C2]、[文字列3]のテキストボックスにはセル[D2]が表示されるようにします。

[OK]ボタンをクリックしてダイアログボックスを閉じます。

関数の引数ダイアログボックスの完成

セル[E2]の数式バーには下のように「=CONCATENATE(B2,C2,D2)」と表示されて、セル[E2]には文字列が結合された状態になっていれば、フィルハンドルをダブルクリックして関数をコピーします。

関数のコピー

下のように隣の列と同じ最終行まで、関数がコピーされます。

フィルハンドルでコピーした結果

新関数[CONCAT関数]ではセル範囲を指定可

Excel2019では、CONCAT関数が追加されました。

「コンカット」と読みます。

使用できる環境については、Microsoftのページで確認してください。

CONCAT 関数 - Office サポート(Microsoft)

[数式]タブの[関数ライブラリ]グループにある[文字列操作]には、[CONCATENATE]はありませんが、使用できないわけではありません。

CONCAT(テキスト1,)

テキスト文字列の一覧または範囲を連結します

CONCAT関数

引数にセル参照だけでなく、セル範囲も指定できるようになっています。便利になりました。

CONCAT関数

以下は、[CONCAT]の[関数の引数]ダイアログボックスです。

CONCATENATE関数]との違いが分かると思います。

[CONCAT関数の引数]ダイアログボックス

参考新関数を使用できないバージョンのExcelで表示した場合の挙動については、以下で解説しています。

新しい関数を旧バージョンのExcelで表示した場合

新関数[TEXTJOIN関数]は区切り文字を挿入して結合

Excel2019では、TEXTJOIN関数も追加されました。

使用できる環境については、Microsoftのページで確認してください。

TEXTJOIN 関数 - Office サポート(Microsoft)

[数式]タブの[関数ライブラリ]グループにある[文字列操作]の中にあります。

[文字列操作]の下方にあります。

TEXTJOIN(区切り文字,空のセルは無視,テキスト1,)

区切り文字を使用してテキスト文字列の一覧または範囲を連結します

参考以下の画像で使用している省略波線は、Excelの図形で作成しています。

[数式]タブの[関数ライブラリ]グループにある[文字列操作]-TEXTJOIN

例えば、以下のように使用します。

TEXTJOIN関数

TEXTJOIN関数の引数ダイアログボックスです。

[TEXTJOIN関数の引数]ダイアログボックス

  • 区切り文字
    文字列の間に挿入する区切り文字を指定します。テキストボックスには、ダブルクォーテーションで挟まれていますが、これは、自動的に入力されます。
    ここでは[,]を使用していますが、[-]などの区切り文字でも構いません。
  • 空のセルは無視
    空のセルに対しての処理を指定します。
    [TRUE]を指定した場合、空のセルを無視して、区切り文字は挿入されません。
    [FALSE]を指定した場合、空のセルも文字列として、必ず区切り文字を挿入します。
  • テキスト
    結合する文字列を指定します。252個まで可能です。セル範囲でも構いません。

以下のように指定しても同じということです。

[TEXTJOIN関数の引数]ダイアログボックス

参考Excel2019では、IFS関数SWITCH関数も追加されています。IF関数の入れ子(ネスト)が苦手な方は、IFS関数はお勧めです。

日付から月・四半期・上期下期を求める(MONTH/IFS/SWITCH関数)

Excel2019では、複数の条件や値を検索して結果を求める[IFS(イフエス)関数]と[SWITCH(スイッチ)関数]が追加されています。 ...

続きを見る

MAXIFS関数MINIFS関数も使用できるようになっています。

複数の条件で最大値/最小値を求める[MAXIFS関数]と[MINIFS関数]

Excel2019では複数の検索条件で最大値・最小値を求められる[MAXIFS(マックスイフエス)関数]と[MINIFS(ミニマムイフエス) ...

続きを見る

フラッシュフィルを使う

フラッシュフィルという機能は、Excel2013以降のバージョンで使用できる機能です。

セル[E2]に下のように表示したい文字列を入力します。文字列をコピーして貼り付けしても構いません。数式や関数ではなく、入力します。

面倒かもしれませんが、一回切りでOKです。

入力が終わったら確定して、[ホーム]タブの右端の方にある[フィル]ボタンをクリックして、[フラッシュフィル]をクリックします。

もし、一行の入力でうまくいかない場合は、その下の行も入力して[フラッシュフィル]を実行してみてください。

フラッシュフィル

あっという間に文字列を結合した状態にしてくれます。

フラッシュフィルのポップヒントには以下のように記されています。

フラッシュフィル(Ctrl+E)

値を自動的に埋め込みます。結果として使いたいサンプルをいくつか入力したら、値を埋め込みたい列のセルをアクティブにした状態にしておきます。

フラッシュフィルの結果

フラッシュフィルについては、以下の記事で詳しく解説しています。フラッシュフィルであれば、文字列の結合も分割もできます。

フラッシュフィル(文字列の結合や抜き出しをワンクリックで)

フラッシュフィルとは、Excelが入力されたデータから規則性を自動的に認識して実行してくれる機能です。Excel2013の新機能です。 これ ...

続きを見る

フラッシュフィル

参考セルの文字列を複数のセルに分割したい場合の方法は、以下の記事で解説しています。

氏名の列を姓と名の列に分割

Excel2013で氏名セルを姓と名の別々のセルに分ける操作をしていたら、Excel2013のポップヒントに思わずほっこりしました。 下のよ ...

続きを見る

1つのセルの内容を複数のセルに分割(指定した文字数で分割)

A列のセルの内容を[年]、[月]、[日]のセルに分割する方法です。 区切り位置ウィザードを使って分割します。 参考Excel2013以降であ ...

続きを見る

関数を使って氏名を分割

Excelで氏名の列を姓と名の列に分割したい場合がありますね。 区切り位置ウィザードを使用して分割する方法は、以下の記事で解説しています。 ...

続きを見る

Profile

執筆者/はま

もっと理解したいあなたへ

おすすめ記事と広告

-Windows 10 & Office 2016 Excel 2016

Copyright © 2001-2020 初心者のためのOffice講座 All Rights Reserved.

Copyright© 初心者のためのOffice講座 , 2020 AllRights Reserved Powered by AFFINGER4.