更新日:、 作成日:

エクセル TRANSPOSE 関数:セルの範囲の行と列を入れ替える

はじめに

エクセルの TRANSPOSE 関数の使い方を紹介します。

TRANSPOSE 関数はセルの範囲の行と列を入れ替えた配列を取得します。

=TRANSPOSE(A1:A3) のようにして、列「A」を 1 行に入れ替えられます。

=TRANSPOSE(A1:C1) のようにして、行「1」を 1 列に入れ替えられます。

行と列を入れ替える方法は「行と列を入れ替える」をご覧ください。

TRANSPOSE 関数の引数

TRANSPOSE(範囲)
範囲の行と列を入れ替えた配列を取得します。

引数「範囲」セルの範囲や配列を指定します。

使い方

TRANSPOSE 関数の使い方を紹介します。

結果は配列になり複数のセルに表示されます。これはスピルという機能によるものです。詳しくは「スピル、動的配列数式の使い方」をご覧ください。2019 以前のバージョンでは左上のセルの値のみ表示されます。

1 列を 1 行に入れ替える

1 列を 1 行に入れ替えます。

=TRANSPOSE(B2:B4)
1

1 行を 1 列に入れ替える

1 行を 1 列に入れ替えます。

=TRANSPOSE(B2:D2)
2

セルの範囲の行と列を入れ替える

セルの範囲の行と列を入れ替えます。

=TRANSPOSE(B2:D4)
3

高度な使い方

TRANSPOSE 関数と他の関数を組み合わせた使い方などを紹介します。

SEQUENCE の連番の行と列を入れ替える

SEQUENCE 関数」の Z 方向の連番を縦方向に入れ替えます。

=TRANSPOSE(SEQUENCE(5,3))
4

抽出した範囲の行と列を入れ替える

FILTER 関数」のようにセルの範囲や配列を取得する関数と組み合わせて、その結果の行と列を入れ替えられます。

値が 30 以上の行を抽出して、行と列を入れ替えます。

=TRANSPOSE(FILTER(B3:D7,D3:D7>=30))
5

解説

引数「範囲」が A1:B3 の 3 行 2 列なら、2 行 3 列に入れ替えます。

[形式を選択して貼り付け] の 行/列の入れ替え と同じです。

paste-transpose