Excel:複数行に入力されているデータをTOCOL関数やTOROW関数で横1行や縦1列の入力に変換する

複数行に入力されているデータは利用しづらいため横1行や縦1列の入力に変換したい場面があります。Microsoft 365のエクセルで追加されたTOCOLやTOROW関数で簡単に変換することができます。

はじめに

例えば以下の画像のようにデータがB2:K6の範囲に入力されている場合、データを利用するために横1行や縦1列に入力し直す必要があります。

複数行に入力されているデータ

TOCOLやTOROW関数を使用することで、このようなデータを簡単に横1行や縦1列の入力へ変換することができます。

TOCOL関数、TOROW関数の概要

TOCOL関数

TOCOL 関数は配列を1つの列の配列に変換する関数です。

TOCOL(配列, [無視する種類], [列方向に読み取る])
引数説明
配列列として返す配列または参照を指定します。
無視する種類特定の種類の値を無視するかどうかを指定します。
列方向に読み取る列方向にデータを読み取る場合はTRUEを指定します。

TOROW関数

TOROW 関数は配列を1つの行の配列に変換する関数です。

TOROW(配列, [無視する種類], [列方向に読み取る])
引数説明
配列行として返す配列または参照を指定します。
無視する種類特定の種類の値を無視するかどうかを指定します。
列方向に読み取る列方向にデータを読み取る場合はTRUEを指定します。

複数行に行方向の並びでデータが入力されている場合

入力データが行方向の並びで入力されている場合、TOCOL 関数で1列のデータに変換することができます。

=TOCOL(範囲)

TOCOL関数で行方向のデータを1列のデータに変換

1行のデータに変換したい場合は TOROW 関数を使用します。

=TOROW(範囲)

TOROW関数で行方向のデータを1行のデータに変換

複数行に列方向の並びでデータが入力されている場合

入力データが列方向の並びで入力されている場合、TOCOL 関数の3つ目の引数に TRUE を指定することで1列のデータに変換することができます。

=TOCOL(範囲, 0, TRUE)

2つ目の引数に指定している 0 は「すべての値を保持する」指定です。

TOCOL関数で行方向のデータを1列のデータに変換

1行のデータに変換したい場合は、3つ目の引数に TRUE を指定した TOROW 関数を使用します。

=TOROW(範囲, 0, TRUE)

TOROW関数で行方向のデータを1列のデータに変換

無視する種類を指定する2つ目の引数に指定できる値を記載しておきます。

説明
0すべての値を保持する (既定)
1空白を無視する
2エラーを無視する
3空白とエラーを無視する

詳しくは Microsoft のドキュメントを参照ください。

まとめ

Excel に TOCOL 関数と TOROW 関数が追加されたことで、複数行に入力されているデータを利用しやすい入力データに変換する作業が簡単になりました。

定期的に関数の一覧を見ておくといいかもしれません。