excel

【Excel】エクセルの複数セルをカンマ区切りで結合する方法(TEXTJOIN関数・&)

エクセルの複数セルをカンマ区切りで結合する方法1【TEXTJOIN関数】 - TEXTJOIN関数の基本数式
当サイトでは記事内に広告を含みます

Excelで氏名、商品名、メールアドレス、住所などが複数のセルに分かれていると、一覧の作成やCSV用データの準備で扱いにくくなることがあります。

このような場合は、TEXTJOIN関数やアンパサンド記号を使うことで、複数セルの文字列をカンマ区切りで1つのセルへまとめられます。

空白セルを除外する方法、数式をコピーするときの注意点、区切り記号を変更する考え方まで理解しておくと、日常のデータ整形が格段にスムーズになるでしょう。

複数セルをカンマ区切りで結合する基本ポイント

・新しいExcelではTEXTJOIN関数を使う

・少ないセル数なら&記号でも対応できる

・空白セルの扱いと区切り記号の位置を確認する

 

エクセルの複数セルをカンマ区切りで結合する方法1【TEXTJOIN関数】

A列 氏名 B列 部署 C列 役職 D列 結合結果
田中 太郎 営業部 主任 田中 太郎,営業部,主任
佐藤 花子 総務部 空白 佐藤 花子,総務部

それではまず、空白セルを自然に除外しながら複数セルを結合できるTEXTJOIN関数について解説していきます。

 

TEXTJOIN関数の基本数式

TEXTJOIN関数は、指定した複数のセルやセル範囲を任意の区切り文字でつなげるための関数です。

たとえば1行目に見出しがあり、2行目からデータが始まる表で、A2からC2までの内容をD2にカンマ区切りで表示したい場合を考えます。

=TEXTJOIN(“,”,TRUE,A2:C2)

この数式をD2へ入力すると、A2、B2、C2に入っている文字列が半角カンマで結合されます。

第1引数の”,”は区切り文字です。

半角カンマを使いたい場合は、必ずダブルクォーテーションで囲んだ”,”を指定します。

第2引数のTRUEは、対象範囲に空白セルがあるとき、その空白を無視する設定です。

空白セルを無視するTRUEを指定すると、空欄の前後に不要なカンマが残りません。

第3引数のA2:C2は結合する範囲であり、A2、B2、C2を個別に指定する代わりに、連続するセル範囲をまとめて参照できます。

たとえばC2が空白なら、結果は田中 太郎,営業部のようになり、末尾にカンマは付きません。

顧客リストで電話番号の2つ目が未登録の場合、商品一覧で補足情報がない場合など、入力状況にばらつきがある表では特に便利です。

反対に第2引数をFALSEにすると空白セルも区切りの対象になります。

そのためA2が氏名、B2が部署、C2が空欄である場合、田中 太郎,営業部,のように最後にもカンマが表示されます。

空欄そのものを表現したい特別なデータ以外では、TRUEを選ぶのが実務的でしょう。

TEXTJOIN関数はMicrosoft 365やExcel 2019以降などで利用できます。

古いExcelでは関数名を入力しても候補に表示されない場合があるため、そのときは後述する&記号の方法を使います。

エクセルの複数セルをカンマ区切りで結合する方法1【TEXTJOIN関数】 - TEXTJOIN関数の基本数式

数式を確定する前に、結合対象に数値や日付が含まれていないかも確認しましょう。

数値は通常どおり文字列として連結されますが、日付の表示形式を意図した形に保ちたい場合はTEXT関数との組み合わせが必要になることがあります。

まずは文字列だけの行でTEXTJOIN関数を試すと、仕組みをつかみやすくなります。

 

数式の入力からオートフィルまでの操作

TEXTJOIN関数を複数行へ適用するときは、最初の結果セルに数式を入力してから、フィルハンドルで下へコピーします。

ここではD1に結合結果という見出しがあり、D2へ最初の数式を入れる場面を想定します。

まずD2セルをクリックし、数式バーまたはセル内に=TEXTJOIN(“,”,TRUE,A2:C2)と入力します。

Enterキーを押すと、A2からC2までの内容がカンマ区切りでD2に表示されます。

数式の参照先がA2:C2になっていることを確認してから、下方向へコピーすることが大切です。

D2セルを選択したまま右下に表示される小さな四角形がフィルハンドルです。

このフィルハンドルを下へドラッグすると、D3ではA3:C3、D4ではA4:C4というように行番号が自動で変わります。

隣接するA列からC列に連続したデータが入力されている場合は、フィルハンドルをダブルクリックして最終行付近まで一括コピーすることも可能です。

ただし途中に空白行があると、ダブルクリックによるコピーが途中で止まることがあります。

そのような表では、必要な範囲を選択してCtrlキーとDキーで下方向へコピーするか、フィルハンドルを目的の行までドラッグしましょう。

結合結果を別シートへ渡す場合も、元データのセル参照は自動的に更新されます。

一方で数式ではなく固定した文字列として提出したい場合は、D列をコピーし、貼り付け先で値として貼り付けを選びます。

値として貼り付ければ、後からA列からC列を変更しても結合結果は変化しません。

CSVファイルを作る前や、外部システムへ貼り付ける前には、値への変換を行う場面も多いでしょう。

エクセルの複数セルをカンマ区切りで結合する方法1【TEXTJOIN関数】 - 数式の入力からオートフィルまでの操作

セルの表示幅が足りずに文字列が見切れるときは、D列の列見出しの右端をダブルクリックすると、内容に合わせて列幅を自動調整できます。

数式が正しいのに見た目だけが崩れているケースもあるため、表示幅と折り返し設定も確認しておくと安心です。

 

空白セルと複数範囲を扱う設定

TEXTJOIN関数は、連続した1つの範囲だけでなく、離れたセルや複数の範囲も結合できます。

たとえばA2に姓、B2に名、D2に都道府県、E2に市区町村が入力されている場合、不要なC列を飛ばして結合したいことがあります。

=TEXTJOIN(“,”,TRUE,A2:B2,D2:E2)

このように第3引数以降へ複数の範囲を追加すると、指定順に文字列をつなげられます。

セルを個別に指定する場合は、=TEXTJOIN(“,”,TRUE,A2,B2,D2,E2)のような書き方でも問題ありません。

結合する順序はシート上の位置ではなく、数式内に記載した順序で決まります。

住所のように都道府県、市区町村、番地を自然な順番に並べたい場合は、参照するセルの並びをよく確認しましょう。

また、見出し行を含めて範囲指定しないよう注意が必要です。

A1:C2を対象にしてしまうと、氏名、部署、役職といった見出しまで結合結果に含まれます。

サンプルデータで1行目にヘッダーがあるなら、最初のデータ行は必ず2行目から参照します。

空白セルを無視するTRUEは便利ですが、空欄がデータの欠落を意味する場合には、結合後の結果だけでは何が未入力だったのか判別しにくくなります。

入力漏れを確認する作業では、別列で空欄チェックを行い、データ整形の段階でTEXTJOINを使うと役割を分けられます。

区切り文字にはカンマ以外にも、半角スペース、スラッシュ、改行文字などを指定できます。

ただしカンマを含む住所や商品説明をCSVへ出力する予定があるときは、出力側の仕様によって引用符の扱いが変わることがあります。

Excel内で見やすくするための区切りなのか、外部データへ渡すための区切りなのかを先に決めておくと、後の修正を減らせます。

【操作のポイント】TEXTJOIN関数ではTRUEを使い、空白セルによる余分なカンマを防ぎます。

 

エクセルの複数セルをカンマ区切りで結合する方法2【&記号】

A列 姓 B列 名 C列 部署 D列 結合結果
鈴木 一郎 開発部 鈴木,一郎,開発部

続いては、古いExcelでも利用しやすい&記号での結合方法を確認していきます。

 

&記号でカンマを挟む数式

&記号は、Excelで文字列やセルの内容を連結するための演算子です。

TEXTJOIN関数が利用できないExcelを使っている場合や、結合するセルが少なく数式を単純にしたい場合に役立ちます。

A2からC2までの3セルをカンマ区切りでD2へ結合するなら、次の数式を入力します。

=A2&”,”&B2&”,”&C2

数式内の&は、左側と右側の値をつなぐ役割を持ちます。

セル参照の間に”,”を入れることで、A2の後とB2の後へカンマを表示できます。

カンマそのものは文字列として扱うため、必ずダブルクォーテーションで囲みます。

カンマを囲み忘れると、Excelは文字列ではなく名前や数式の一部として解釈し、エラーになることがあります。

数式を入力後にD2へ鈴木,一郎,開発部と表示されれば、正しく設定できています。

&記号は、氏名を姓と名のセルから作る、郵便番号と住所をまとめる、商品コードと商品名を1つのラベル用文字列にする、といった用途でも使えます。

ただし、結合対象が10個、20個と増えると、&と”,”を何度も記述する必要があります。

式が長くなるほど、カンマの位置や参照セルの間違いに気付きにくくなる点が注意点です。

結合対象が連続する広い範囲なら、TEXTJOIN関数のほうが見通しよく管理できるでしょう。

エクセルの複数セルをカンマ区切りで結合する方法2【&記号】 - &記号でカンマを挟む数式

一方で、セルごとに異なる記号を挟みたい場合には、&記号のほうが直感的なこともあります。

たとえば姓と名の間だけ半角スペースにし、その後にカンマを付けて部署を続ける場合は、=A2&” “&B2&”,”&C2のように記述できます。

出力したい文字列の完成形を先に紙やメモに書き出してから数式へ置き換えると、組み立てミスを防ぎやすくなります。

 

空白セルがある場合の注意点

&記号を使った連結では、空白セルがあっても数式に書かれたカンマは必ず表示されます。

たとえばC2が空白の状態で=A2&”,”&B2&”,”&C2を使うと、結果は鈴木,一郎,のようになり、末尾に不要なカンマが残ります。

空欄が発生する可能性のある表では、単純な&記号だけの数式では整った結果にならない場合があります。

この問題を避けるには、IF関数でC2が空白かどうかを判断します。

=A2&”,”&B2&IF(C2=””,””,”,”&C2)

この数式では、C2が空白なら何も追加せず、C2に内容があるときだけカンマとC2の値を追加します。

IF関数の最初のC2=””は、C2が空欄かどうかを確認する条件です。

次の””は空欄だった場合の表示であり、最後の”,”&C2は値が入力されている場合の表示です。

このように、カンマをC2の前へ置くことで、C2が空白でも余分な区切り記号を出さずに済みます。

ただしD2やE2にも入力の有無が混在するような表では、IF関数が何重にもなり、数式が急に複雑になります。

複数列の空欄を柔軟に扱う必要がある場合は、TEXTJOIN関数を使える環境へ切り替えるほうが管理しやすいでしょう。

古いExcelでTEXTJOINが使えない場合は、入力規則で空欄を減らす、結合する列を限定する、数式を補助列に分けるといった対応も考えられます。

結合結果を目視で確認する際は、先頭、途中、末尾の空白セルがある行をそれぞれ数件チェックしましょう。

通常行だけを見ていると、例外行でだけカンマが連続する問題を見落とすかもしれません。

エクセルの複数セルをカンマ区切りで結合する方法2【&記号】 - 空白セルがある場合の注意点

文字列の間に全角カンマを使いたい場合は、”,”の部分を”、”へ変更します。

ただし機械処理用のデータでは半角カンマが使われることが多いため、提出先や取り込み先のルールに合わせることが重要です。

 

CONCAT関数と&記号の使い分け

ExcelにはCONCAT関数もあり、複数の文字列を結合できます。

たとえば=CONCAT(A2,”,”,B2,”,”,C2)と入力すれば、&記号による数式と同じように3つのセルをカンマ区切りでつなげられます。

ただしCONCAT関数は、TEXTJOIN関数のように空白セルを自動で除外する指定を持ちません。

空白を無視して区切り記号も整えたいならTEXTJOIN、少数セルを自由な形でつなぐなら&記号が分かりやすい選択です。

CONCAT関数は、セル範囲をそのまま指定できる点では便利です。

しかし=A2:C2のような範囲をCONCATでつなぐと、各セルの間にカンマは自動挿入されません。

そのため区切り記号が必要な一覧データには、TEXTJOIN関数のほうが用途に合います。

&記号は数式のどこに何を出力するかを細かく書けるため、固定の文言を混ぜる帳票にも向いています。

たとえば=A2&”さんは”&B2&”所属です”とすれば、氏名と部署から案内文を作成できます。

一方で、セル数が多い顧客データや商品マスタをカンマ区切りにする作業では、TEXTJOIN関数を基準に考えるとよいでしょう。

使用中のExcelのバージョン、空欄の発生頻度、作成後に数式を他の人が修正する可能性を踏まえて選ぶことが大切です。

数式が短いからといって&記号に固定せず、将来列が増える可能性まで含めて方法を決めると、再作業を抑えられます。

【操作のポイント】&記号では、空白セルの前後に不要なカンマが出ないようIF関数で条件を付けます。

 

TEXTJOIN関数で区切り文字を変更する設定

A列 商品名 B列 色 C列 サイズ D列 表示例
Tシャツ 白 M Tシャツ / 白 / M

続いては、カンマ以外の区切り文字へ変更する方法と、目的に応じた設定を確認していきます。

 

カンマ以外の記号を指定する方法

TEXTJOIN関数の第1引数は、カンマに限定されません。

データの用途に応じて、半角スペース、全角中黒、スラッシュ、ハイフンなどを区切り文字として指定できます。

商品名、色、サイズをスラッシュでつなぐ場合は、次の数式をD2へ入力します。

=TEXTJOIN(” / “,TRUE,A2:C2)

区切り文字を” / “としているため、スラッシュの前後には半角スペースが入ります。

見やすさを優先する表示用データでは、区切り記号の前後にスペースを入れると文字列を判別しやすくなります。

一方で、外部システムへ取り込むデータや商品コードのように厳密な形式が必要な場合は、余分なスペースを含めない設定にします。

その場合は=TEXTJOIN(“/”,TRUE,A2:C2)のように入力しましょう。

電話番号の各部分をハイフンでつなぐ、住所要素を全角スペースでつなぐ、タグを中黒で並べるといった用途でも同じ考え方を使えます。

日本語の文章中で項目を並べる場合は、全角の「・」を使うと読みやすいことがあります。

ただし、後からCSVへ出力するデータと画面表示用のデータを同じ列で管理すると、区切り文字の違いが混乱の原因になりがちです。

提出用、社内表示用、システム取込用など、目的別に出力列を分けると管理しやすくなります。

商品一覧.xlsx – Excel − □ ×
ファイル ホーム 挿入 ページ レイアウト 数式 データ 校閲 表示 ヘルプ
貼り付け  B I U  罫線  配置  数値  スタイル
D2fx=TEXTJOIN(” / “,TRUE,A2:C2)
A B C D
1 商品名 色 サイズ 表示例
2 Tシャツ 白 M Tシャツ / 白 / M
D2へ数式を入力 ←

上のように数式バーで区切り文字を変更し、最初のD2セルで結果を確認してから下へオートフィルします。

区切り文字の変更は数式の第1引数だけで済むため、既に作成済みのTEXTJOIN数式にも適用しやすい操作です。

 

改行区切りで1セル内に表示する方法

1つのセル内で複数の項目を改行して表示したい場合は、CHAR関数を区切り文字に指定します。

Windows版Excelでセル内改行に使われる文字コードは10なので、次の数式を利用します。

=TEXTJOIN(CHAR(10),TRUE,A2:C2)

この数式では、A2、B2、C2の内容がセル内で1行ずつ改行されて表示されます。

CHAR(10)を使っただけでは改行が見えない場合があるため、セルの折り返して全体を表示する設定も必要です。

ホームタブの配置グループにある折り返して全体を表示するボタンをクリックすると、セル内の改行が反映されます。

行の高さが自動調整されない場合は、行番号の境界をダブルクリックするか、ホームタブから書式、行の高さの自動調整を選びます。

この方法は、住所の各要素をラベル内で見やすく並べる場合や、1セルを使って箇条書き風の説明を作る場合に便利です。

ただし改行を含むセルをCSV形式で扱うと、利用するシステムによっては1レコードが複数行に見えてしまうことがあります。

CSV出力やデータベース登録が目的なら、改行ではなくカンマやスラッシュを使うほうが安全なこともあります。

印刷用の帳票、画面上のカード表示、社内資料など、視認性を優先する用途で活用するとよいでしょう。

また、セル内改行はAltキーとEnterキーでも手入力できます。

しかし多くの行へ同じルールで適用するなら、TEXTJOINとCHAR関数を使うほうが効率的です。

数式の結果を値として貼り付けた後でも、折り返し設定はセルの書式として残せます。

データと表示形式を分けて考えると、意図しない見た目の崩れを防ぎやすくなります。

 

数値と日付を結合するときの表示形式

TEXTJOIN関数で数値や日付を結合すると、セルに設定している表示形式どおりにならないことがあります。

たとえばA2に日付、B2に担当者名があり、日付,担当者名という文字列を作る場合、日付がシリアル値のような数字で表示されるケースがあります。

そのときはTEXT関数を利用して、日付の見せ方を明示します。

=TEXTJOIN(“,”,TRUE,TEXT(A2,”yyyy/mm/dd”),B2)

TEXT(A2,”yyyy/mm/dd”)は、A2の日付を2026/10/24のような文字列に変換する部分です。

日付や金額を他の文字列と結合する場合は、TEXT関数で表示形式を指定すると結果が安定します。

金額ならTEXT(C2,”#,##0円”)、割合ならTEXT(C2,”0.0%”)のように書けます。

ただしTEXT関数の結果は数値ではなく文字列になるため、その後に合計や平均を計算する列としては使えません。

計算用の元データは数値や日付のまま残し、表示用または出力用の別列で結合するのが基本です。

特に先頭の0を含む郵便番号、社員番号、商品コードでは注意が必要です。

元データが数値として入力されていると、結合時に先頭の0が失われることがあります。

郵便番号を7桁で表示したいなら、TEXT(A2,”0000000″)のように桁数を指定します。

データの意味によっては、最初からセルの表示形式を文字列にし、入力段階で先頭の0を保持する方法も有効です。

結合後の見た目だけでなく、元の値が何として保存されているかを確認する習慣が重要になります。

【操作のポイント】区切り文字は第1引数で変更し、日付や金額はTEXT関数で表示形式を整えます。

 

結合結果を値に変換して活用する手順

A列 元データ B列 元データ C列 数式の結果 D列 値として貼り付け後
東京 新宿区 東京,新宿区 東京,新宿区

続いては、結合した結果を数式のまま使う場合と、固定値へ変換する場合の違いを確認していきます。

 

値として貼り付ける操作

TEXTJOIN関数や&記号で作成した結合結果は、元データを変更すると自動的に更新される数式です。

元データとの連動が必要な一覧なら便利ですが、外部システムへの提出やCSV作成では、更新されない固定値に変えたいことがあります。

その場合は、結合結果の列をコピーしてから値として貼り付けを行います。

まず数式が入ったD2から最終行までを選択し、CtrlキーとCキーでコピーします。

次に同じ範囲または別の列の先頭セルを右クリックし、貼り付けのオプションから値を選びます。

値として貼り付けを実行すると数式は消え、画面に表示されていた結合結果だけが残ります。

キーボード操作では、コピー後にCtrlキーとAltキーとVキーを押し、値を選択してEnterキーを押す方法もあります。

Excelのバージョンによって貼り付けメニューの見た目は異なりますが、123と表示される値のアイコンが目印です。

同じ列へ値として貼り付けるときは、元の数式を戻せなくなるため注意しましょう。

不安な場合は、先に別シートへコピーする、ファイルを保存してから作業する、数式列を残して出力用列だけを固定値にする、といった方法が安全です。

元データを後で修正する可能性があるなら、数式列を残したままにするほうが再出力しやすくなります。

提出専用のシートを作り、そこで値として貼り付ける運用にすると、計算用データと配布用データを混同しにくくなるでしょう。

数式を含んだまま相手へ渡すと、参照先が変わったり、利用するExcelの機能差で表示が変わったりする可能性もあります。

相手が編集しない完成データを必要としているなら、値として貼り付ける判断が有効です。

 

CSV出力前に確認する項目

カンマ区切りで結合した文字列をCSVファイルへ出力する場合は、Excel上の見た目だけでなく、CSVの区切りルールも確認する必要があります。

CSVは一般に半角カンマで列を区切る形式です。

そのためセル内にもカンマが含まれると、CSVを書き出すソフトがそのセルをダブルクォーテーションで囲むことがあります。

セル内のカンマは必ずしもエラーではありませんが、取り込み先が引用符付きCSVを正しく読めるか確認することが重要です。

たとえばD2に東京,新宿区という文字列があり、その列をCSVへ保存すると、ファイル内では”東京,新宿区”のように出力されることがあります。

これは1つのセルの内容であることを示す一般的な表現です。

しかし独自仕様のシステムや古い取込機能では、引用符の扱いが想定と異なる場合もあります。

取り込み先の仕様書があるなら、区切り文字、文字コード、改行コード、文字列を囲む記号のルールを確認しましょう。

CSVを保存する前には、不要な改行、タブ、前後の空白が結合結果に含まれていないかも確認します。

見た目では分かりにくい空白があると、検索や照合が一致しない原因になります。

必要に応じてTRIM関数で連続スペースを整理したり、CLEAN関数で印刷できない文字を除去したりしてから結合する方法もあります。

外部へ渡すファイルは、数行だけでもメモ帳などで開き、実際の区切り方を目視することをおすすめします。

Excelだけで完結している間は問題が見えなくても、出力後に初めてデータ形式の違いが表面化することがあるためです。

 

結合前の文字列を整える方法

複数セルを結合した結果に余計な空白や表記ゆれが含まれる場合は、結合前に各セルの内容を整えると仕上がりが安定します。

たとえばA2に末尾スペースがあると、TEXTJOINで結合した後にもそのスペースが残ります。

このようなときは、TRIM関数を組み合わせます。

=TEXTJOIN(“,”,TRUE,TRIM(A2),TRIM(B2),TRIM(C2))

TRIM関数は、文字列の先頭と末尾にある余分な半角スペースを削除し、途中の連続スペースを1つに整理します。

コピー元がWebサイトやメールの場合は、目に見えない空白が混ざることがあるため、結合前の整形が特に重要です。

ただし日本語入力で使われる全角スペースは、TRIM関数だけでは期待どおりに取り除けない場合があります。

全角スペースを半角スペースへ置き換えるなら、SUBSTITUTE関数を組み合わせる方法があります。

たとえばSUBSTITUTE(A2,” ”,” “)は、A2の全角スペースを半角スペースへ置換します。

データの件数が多い場合は、元データを直接修正する前に補助列で整形結果を確認すると安全です。

氏名、住所、商品名のように本来スペースが意味を持つデータもあるため、すべての空白を一律に削除するのは適切ではありません。

どの空白を不要と判断するのか、出力先で許容される表記は何かを決めてから数式を作りましょう。

結合は単に文字をつなげる作業ではなく、複数の情報を使いやすい1つのデータへ整える工程です。

【操作のポイント】外部提出用の結合結果は、数式を値に変換し、CSV保存前に実データを確認します。

 

まとめ エクセルの複数セルをカンマ区切りで結合する方法(&・TEXTJOIN関数)

Excelの複数セルをカンマ区切りで結合するには、空白セルを除外できるTEXTJOIN関数を使う方法が基本です。

=TEXTJOIN(“,”,TRUE,A2:C2)を使えば、1行目のヘッダーを除いた2行目以降のデータを、余分なカンマを付けずにまとめられます。

TEXTJOIN関数が利用できないExcelでは、=A2&”,”&B2&”,”&C2のように&記号で結合できます。

ただし&記号では空白セルの前後にカンマが残りやすいため、必要に応じてIF関数を組み合わせましょう。

スラッシュ、スペース、改行などへ区切り文字を変えることもでき、日付や金額を含める場合はTEXT関数で表示形式を整えると見やすい結果になります。

最後に値として貼り付けを行えば、外部提出やCSV作成に使いやすい固定データへ変換できます。

用途に応じてTEXTJOIN関数と&記号を使い分け、見やすく正確なデータ整形を進めていきましょう。