• 公開日:

エクセルで2列(複数列)を1列にまとめる方法

この記事では、エクセルで2列(複数列)を1列にまとめる方法をご紹介します。

2列を1列にまとめる際、2列に分けて入力された文字列を結合したい場合と2行を1列に並べたい場合がありますが、以下ではどちらの方法も紹介しています。

「Excel2019」以降のバージョンや「Microsoft 365」で使える新しい関数も紹介しているので、書式や引数の説明と合わせて参考にしてみてください。

エクセルで2列(複数列)を1列にまとめる方法

以下では、エクセルで2列(複数列)を1列にまとめる方法を5通りご紹介します。

  • CONCAT関数を使って2列を1列にまとめる方法
  • TOCOL関数を使って2列を縦1列にまとめる方法
  • TOROW関数を使って2列を横1列にまとめる方法
  • 記号を使って2列を1列にまとめる方法
  • CONCATENATE関数を使って2列を1列にまとめる方法

「Excel 2019」以降のバージョンや「Excel Web版」、「Microsoft 365」でしか使用できない関数もあります。

上記に対応していない場合は、「記号を使って使って横1列に2列を1列にまとめる方法」または「CONCATENATE関数を使って2列を1列にまとめる方法」を参考にしてください。

CONCAT関数を使って2列(複数列)を1列にまとめる方法

CONCAT(コンカット)関数を使うと、2列のセルに入力された文字列を1列にまとめることができます。ただし、CONCAT関数は「Excel 2019」以降のバージョンか「Microsoft 365」でしか使用できないのでご注意ください。

上記の画像のようなデータを用意してください。例では、A列の「姓」とB列の「名」を1列まとめてC列に「姓名」を表示していきます。

関数を入力する

C1セルに「=CONCAT(A2,B2)」を入力し、Enterを押します。CONCAT関数はセル範囲や文字列を結合します。書式は「=CONCAT(テキスト1,[テキスト2],…)」です。CONCAT関数はセル範囲を指定することができるので、「=CONCAT(A2:B2)」を入力しても同様の操作ができます。

オートフィルする

A2セルとB2セルの文字列が結合されました。数式をコピーします。C2セルのフィルハンドルをドラッグします。

セルの文字列を結合して、エクセルで2列(複数列)を1列にまとめることができました。

TOCOL関数を使って2列を縦1列にまとめる方法

以下では、TOCOL(トゥコラム)関数を使って2列を縦1列にまとめる方法をご紹介します。

ただし、TOCOL関数は「Microsoft 365」でしか使用できないのでご注意ください。

データを用意する

上記のような2列のデータを用意し、2列を縦1列にまとめていきます。

TOCOL関数は、エラーや空白セルを含むすべての値を保持するか無視するかを選択できるので、今回はあえてエラーや空白セルが存在するデータを用意しました。

関数を入力する

任意のセル(例:D1セル)に「=TOCOL(A1:B5,3)」を入力し、Enterを押します。

TOCOL関数は、 セル範囲や配列を縦1列に変換します。

書式は「=TOCOL(array,[ignore],[scan_by_column])です。日本語に直すと「=TOCOL(配列,エラーや空白を無視するか,スキャン順)」です。

第2引数([ignore])では1列にする際にエラーや空白を無視するかどうか数字で指定します。どの数字を指定するかは下の表を参考にしてください。

今回は空白のセルとエラーを両方無視して縦1列にするので「3」を選択しています。

説明
0空白とエラーを含むすべての値を保持する
1空白を無視する
2エラーを無視する
3空白とエラーを無視する

第3引数([scan_by_column])では、元のセル範囲をどの方向に並べていくかを指定します。省略可能です。

今回は左上のA1セルからに横方向に並べていくので「FALSE」を選択し、省略しています。

詳細は下記の表を参考にしてください。

説明
TRUE列(縦)ごとの方向
FALSE行(横)ごとの方向
2列を縦1列にまとめることができた

空白とエラーを無視したデータを行方向に抜き出し、TOCOL関数を使って2列を縦1列にまとめることができました。

TOROW関数を使って2列を横1列にまとめる方法

以下では、TOROW(トゥロウ)関数を使って2列を横1列にまとめる方法をご紹介します。

ただし、TOROW関数は「Microsoft 365」でしか使用できないのでご注意ください。

関数を入力します

任意のセル(例:D1セル)に「=TOROW(A1:B5,0,TRUE)を入力し、Enterを押します。

TOROW関数は、 セル範囲や配列を横1列に変換します。

書式は「=TOROW(array,[ignore],[scan_by_column])」です。日本語に直すと「=TOROW(配列,エラーや空白を無視するか,スキャン順)」です。

第2引数([ignore])では1列にする際にエラーや空白を無視するかどうか数字で指定します。どの数字を指定するかは下の表を参考にしてください。

今回は空白のセルとエラーを含むすべての値を横1列にするので「0」を選択しています。

説明
0空白とエラーを含むすべての値を保持する
1空白を無視する
2エラーを無視する
3空白とエラーを無視する

第3引数([scan_by_column])では、元のセル範囲をどの方向に並べていくかを指定します。省略可能です。

今回は左上のA1セルからに縦方向に並べていくので「TRUE」を選択します。

詳細は下記の表を参考にしてください。

説明
TRUE列(縦)ごとの方向
FALSE行(横)ごとの方向
2列を横1列にまとめることができた

空白とエラーを含むすべてのデータを列方向に抜き出し、TOCOL関数を使って2列を縦1列にまとめることができました。

記号を使って2列を1列にまとめる方法

セル内の文字列を結合するのに、記号を使って2列を1列にまとめる方法があります。

関数などを使う必要がないので、一番シンプルな方法をお探しの方におすすめです。

詳細は、以下の記事「「&」を使って結合する方法」セクションでご紹介しています。

Excelで文字列を結合する方法(「&」や関数を使った3つの方法)

CONCATENATE関数を使って2列を1列にまとめる方法

CONCATENATE関数はCONCAT関数と類似した関数です。「Excel 2016」以前のバージョンでも使用することができます。

ただし、範囲内のセルを結合する場合、セル範囲を指定することができないので、セルを 1 つずつ指定する必要があります。

詳細は、以下の記事「CONCATENATE関数の使い方」セクションでご紹介しています。

ExcelのCONCATENATE関数の使い方|複数の文字列を結合する