Excel 文字列結合|目的別に最適な方法を選んで業務をスピードアップしよう
EXCELで文字をつなごうとしたとき、悩まれたことはありませんか?
「&で繋ぐのは面倒だな」
「CONCATやTEXTJOINって何が違うの?」
「日付を結合したら表示が崩れてしまった……」
Excelには文字列を結合する方法が複数あり、「どれを使えばいいのか」で迷ってしまうのは自然なことです。この記事では、2026年最新の情報をもとに、フラッシュフィルから新旧すべての結合関数まで、全手法を網羅的に解説しています。
この記事を読めば、今後の文字列結合で迷うことはなくなり、仕事がスピードアップすることを体感頂けると思います。
Excelで文字列を結合する全手法|比較表で使い分けを解説

Excelでの文字列結合には複数の方法があります。まずは主要な手法の内容をざっと確認しましょう。
【比較表】
| &演算子 | CONCAT関数 | TEXTJOIN関数 | フラッシュフィル | |
|---|---|---|---|---|
| 内容 | 「&」記号でセルや文字列を直接つなげる最もシンプルな方法 | 範囲指定での結合に対応 | 区切り文字を指定して複数の値を結合。空白セルの除外も可能 | 入力パターンをExcelが自動認識し、残りのセルを一括で埋める機能 |
| 対応Ver | 全バージョン | Office2019以降/ Microsoft365 | Office2019以降/ Microsoft365 | Office2013以降 |
| 特徴 | 最もシンプルで 直感的。少数のセルの結合に最適 | 簡単な設定で、指定した範囲のデータを繋げることが可能 | 区切り文字の一括指定と空白スキップが他にない強み | 関数不要で直感的。大量データの 一括処理に最適 |
| 活用シーン | セルの結合、簡単な文字列組み立て | 複数セルを一括結合したリスト 例)顧客リスト、メッセージテンプレート | カテゴリのリスト化、CSV変換 例)名簿や住所録作成 | データ整形・クレンジング、一括変換作業 |
【最速】関数不要!フラッシュフィル(Ctrl+E)で結合
フラッシュフィルは、関数を使わずに高速で処理を完了できる機能です。ユーザーが入力したパターンをExcelが自動認識し、他のセルにも適用します。定型的なデータ整形を一度だけ行う場面で大きな効果を発揮します。
基本操作と具体例
操作は非常に直感的です。結合データの隣に列を用意し、最初の行に見本を入力します。下のセルを選択して「Ctrl+E」を押すだけで、Excelがパターンを自動認識して一括入力してくれます。
たとえばA列に姓、B列に名がある場合、C1セルに「山田太郎」と手入力し、C2セルで「Ctrl+E」を押してください。ExcelがA列とB列を結合するパターンを学習し、最終行まで自動で結果を生成します。リボンの「データ」タブからも実行することができます。
メリット|数式の知識がなくてもすぐに使える
フラッシュフィルの最大の魅力は、数式の知識が一切不要な点です。関数の構文や引数の意味を覚えなくても、見本を一つ作るだけでExcelが処理を代行してくれます。郵便番号の連結や商品コードの整形も一瞬で完了することができます。関数に苦手意識がある方でも、迷わず使いこなすことができます。
デメリット|元データの変更に追従しない
最大のデメリットは、結果が元データの変更に自動追従しない点です。生成されるのはその時点のデータに基づいた「値」であり、関数のような参照関係は保持されません。元のセルを修正しても、結合後の内容は更新されません。
動的なデータを扱う場合は、CONCATやTEXTJOINなどの関数を使用してください。
TEXTJOIN関数で効率的に結合
TEXTJOIN関数は、Office 2019やMicrosoft 365で利用できる高機能な関数です。区切り文字の自動挿入や空白セルの処理といった課題を一気に解決することができます。実務の多くの場面で、最もおすすめできる選択肢です。
TEXTJOIN関数の基本構文と引数の意味
構文は「=TEXTJOIN(区切り文字, 空白セルを無視するか, 対象セル1, …)」です。
第1引数:挿入したい区切り文字をダブルクォーテーションで囲んで指定します。
第2引数:空白セルを無視するかをTRUE(無視する)またはFALSE(無視しない)で指定します。
第3引数以降:結合したいセルや範囲を指定します。
区切り文字(カンマやスペース)を挟んで結合する方法
TEXTJOIN関数を使うと、指定した区切り文字を自動で挿入することができます。&演算子で区切り文字を一つずつ手入力する手間がなくなります。
「東京都」「千代田区」「丸の内」をスペースで繋ぐ場合は「=TEXTJOIN(” “, TRUE, A1:C1)」と記述するだけで、各セルの間に自動でスペースが挿入されます。
CSV形式のデータ作成や単語リストの整形が劇的に効率化されます。
空白セルを無視してスマートに連結する設定
入力漏れなどで空白セルが含まれていても、TEXTJOIN関数ならスマートに対処することができます。
第2引数に「TRUE」を指定するだけで、範囲内の空白セルは自動的に無視されます。ミドルネームの有無が混在する名簿などで特に有効です。不要な区切り文字が連続する問題を防ぎ、データの正確性と見栄えが同時に向上します。
セル内改行を挟んで結合するテクニック|CHAR関数との組み合わせ
TEXTJOIN関数はCHAR関数と組み合わせることで、一つのセル内で改行しながら表示させることも可能です。宛名ラベルのように、住所や氏名を縦に並べる際に役立ちます。
区切り文字に「CHAR(10)」を指定し、「=TEXTJOIN(CHAR(10), TRUE, A1:C1)」と記述してください。入力後はセルの書式設定で「折り返して全体を表示する」を有効にすることで、各内容がセル内で改行されて表示されます。
【基本】「&(アンパサンド)」とCONCAT関数による結合
&演算子とCONCAT関数は、古くから使われてきた基本的な方法です。シンプルで多くの場面に対応できるため、現在も広く利用されています。それぞれの特徴を理解して使い分けましょう。
「&」演算子|2〜3個のセルを直感的に繋ぐ
&演算子は、最も直接的な結合方法です。数式内でセル参照や文字列を「&」で繋ぐだけで連結することができます。A1とB1を繋ぐ場合は「=A1&B1」と入力するだけです。
関数名が不要で記号一つで処理が完結するため、少数のセルを結合する際に素早く記述することができます。固定の文字列を間に挟むことも容易です。ただし、要素が増えるほど数式が長くなり可読性が低下するため、大量の結合には向きません。
CONCAT関数|広い範囲を一括で結合する
CONCAT関数は、数式が長くなる欠点を解消することができます。引数にセル範囲をまとめて指定できる点が最大の特徴です。Excel 2019以降で使用でき
=CONCAT(A1:A50)」のように記述します。大量のセルを繋ぐ際でも、数式をシンプルに保つことができます。縦一列のデータを一つにまとめたい場合に真価を発揮します。
ただし、区切り文字の自動挿入や空白セルの無視機能はない点に注意が必要です。
旧関数「CONCATENATE」との違いと非推奨の理由
CONCATENATEは古くから存在する関数で、機能はCONCATや&演算子とほぼ同じです。
ただし、セル範囲の一括指定に対応していないため、多くのセルを結合する際も一つずつ指定する手間が生じます。現在は古いファイルとの互換性のために残されている関数です。
新しく覚えるのであれば、範囲指定ができるCONCAT関数や、さらに高機能なTEXTJOIN関数を選択することをおすすめします。
【応用】日付や数値の書式を崩さず結合する|TEXT関数との組み合わせ
文字列結合では、日付や通貨の表示形式が崩れる問題が頻繁に起こります。この解決には、数値を指定した書式の文字列に変換するTEXT関数が有効です。
日付が5桁の数字(シリアル値)になる問題を解決する
日付セルをそのまま結合すると、5桁の数字に変わってしまうことがあります。これはExcelが内部で日付をシリアル値として管理しているためです。TEXT関数を使えば、この問題を解決することができます。
「=TEXT(A1,”yyyy/mm/dd”)&”現在”」のように記述することで、A1セルの日付が指定した形式の文字列に変換され、正しく結合されます。和暦表示などへのカスタマイズも可能です。
通貨記号(¥)やカンマ区切りを維持して結合する方法
金額データも、そのまま結合すると通貨記号や桁区切りのカンマが消えてしまいます。ここでもTEXT関数が役立ちます。「=”売上は”&TEXT(A1,”#,##0″)&”円”」のように記述することで、元のセルの見た目を維持したまま結合することができます。
請求書などの正確な表示が求められる場面で、必須のテクニックです。
郵便番号やIDの「0埋め」を保持して結合する
先頭が0で始まる数値データを扱う際、Excelは自動で0を削除してしまいます。TEXT関数を使えばこの現象を防ぐことができます。第2引数に桁数分の0を指定し、「=TEXT(A1,”000-0000″)」とすることで、桁数が足りない場合でも先頭に0が補完されます。データの統一性を保ち、見栄えを整える上で重要な設定です。
まとめ|目的に合った結合方法を使いこなして、Excel業務をスピードアップしよう
Excelでの文字列結合には、&演算子・TEXTJOIN関数・フラッシュフィルなど多様な方法があります。絶対的な正解はなく、作業の目的やデータの特性に応じた選択が重要です。
一度きりの整形ならフラッシュフィル、複雑なリスト作成ならTEXTJOIN関数、日付や数値を扱う際はTEXT関数との組み合わせ——この使い分けを押さえるだけで、手作業にかかる時間を大幅に削減することができます。
「使う人と使わない人の間には、差がついていく」という感覚は、こうした細かな機能の使いこなしにも当てはまります。今日から、ぜひ実務で試してみてください。

