📊つかえる関数.com

TRANSPOSE関数で行列を転置する方法は?

結論

TRANSPOSE関数で範囲の行と列を入れ替え(転置)できます。2021以降はスピルで自動展開されます。

関数中級·

詳しい解説

TRANSPOSE関数は範囲の行と列を入れ替えます(転置)。`=TRANSPOSE(A1:C3)`は縦3行×横3列を横3列×縦3行に変換します。Excel 2016/2019ではCSE配列数式(Ctrl+Shift+Enter)として入力する必要がありますが、2021以降ではスピル機能により自動展開されます。縦データを横に、横データを縦に変換する、データの向きを変更してグラフ作成、データベース形式への変換などに使用します。元の範囲が縦m行×横n列なら、結果は横n列×縦m行になります。

執筆・検証:田中 けんた|Excel歴15年・MOS資格保持

バージョン対応

バージョン対応状況
Excel 2016Excel 2019Excel 2021Excel 2024Microsoft 365
CSE配列数式として入力CSE配列数式として入力スピルで自動展開スピルで自動展開スピルで自動展開

実務での使用例

縦データを横に変換(2021以降)

縦に並んだ商品名(A1:A5)を横1行に展開。スピル機能で自動的に横に展開される

=TRANSPOSE(A1:A5)

表の行列を入れ替え

3行×4列の表(A1:D3)を4行×3列に転置。列見出しと行見出しを入れ替えてデータの見方を変更

=TRANSPOSE(A1:D3)