Excel 表の行・列を入れ替える(TRANSPOSE関数)

TRANSPOSE関数はセル範囲の

行・列を入れ替える関数です。

この記事では関数の仕様と使用例、

及び同様な機能との比較を紹介します。

仕様

TRANSPOSE(配列)
<配列>
行・列を入れ替える範囲を指定

TRANSPOSE関数は配列数式で

指定する必要があります。(後述)

配列数式の利用方法とメリット・デメリット

使用例

サンプルとして、この表の行列を入れ替えます。

サンプル表

TRANSPOSE関数の引数に

表のセル範囲を指定します。

元の表に行追加の可能性がある場合は

多めにセル範囲を指定します。

TRANSPOSE関数の引数に表のセル範囲を指定

TRANSPOSE関数をセルコピーします。

全て#VALUE!エラーになりますが、

この時点ではこのままで正解です。

TRANSPOSE関数をセルコピー

TRANSPOSE関数のセルを

最も左上のセルから初めて全て選択し

(セル範囲を絶対参照にしていれば

 どのセルから選択を初めても構いません)

数式バーで入力モードにします。

セル範囲を選択し、最も左上の数式バーで入力モードに設定

その状態で[Ctrl]+[Shift]を押しながら

[Enter]を押下します。

{}で囲まれた配列数式になり、

行列の入れ替わった結果が表示され、

セル範囲外になる場合は、

#N/Aエラーになります。

配列数式になりTRANSPOSE関数が正常に実行された例

同様の機能との比較

行列を入れ替えて貼り付け

セル範囲を選択した上でコピーして

「形式を選択して貼り付け」を選択します。

そして「行/列の入れ替え」をチェックし、

「OK」ボタンを押下すると

行列が入れ替わった状態でペーストされます。

セル範囲を選択した上でコピーし「形式を選択して貼り付け」を選択

TRUNSPOSE関数の場合、

リンク貼り付けと同様の状態

(セル参照)になるため

元の表を更新すると関数の方も

表示が変わりますが、

こちらの方法は値貼り付けとなるため

元の表の更新は反映されません。

OFFSET・ROW・COLUMN関数

他の検索関数の組み合わせでも実現可能です。

数式はややこしくなりますが、

配列数式を使用しない分、

使い勝手の良い方法です。

OFFSET(参照元表の開始セル※絶対参照,COLUMN()-OFFSET関数の開始セルの列数,ROW()-OFFSET関数の開始セルの行数)
OFFSET・ROW・COLUMN関数で代替する例

関連記事

活用例

最頻値(現れる頻度が最も高い数値)を取得(MODE.SNGL関数、MODE.MULT関数)

MODE.MULT関数を横方向に使用する場合に使用します。

関数の仕様と使い方の記事一覧

フォローする