みんなのエクセル表計算
中級

【Excel】TRANSPOSE関数-配列で指定された範囲のデータの行列変換を行う関数-


(約文字)

2020-09-03

【Excel】TRANSPOSE関数-配列で指定された範囲のデータの行列変換を行う関数-

【Excel】TRANSPOSE関数-配列で指定された範囲のデータの行列変換を行う関数-

TRANSPOSE関数とは

エクセルの「TRANSPOSE関数」は配列で指定された範囲のデータの行列変換を行う関数です。

まず結論

TRANSPOSE関数を使うと、配列で指定された範囲のデータの行列変換を行う関数ことができます。まずは引数の意味を押さえ、使用例と注意点を確認すると実務で使い分けやすくなります。

  • このページで分かること
  • TRANSPOSE関数でできることと基本の使いどころ
  • 構文と引数の意味
  • TRANSPOSE関数の使用例

セルを切り替えたり、回転させたりすることが必要になる場合、「コピー>貼り付け>行列を入れ替え」で実現できますが、重複データが作成されてしまいます。 このような場合、「TRANSPOSE関数」を利用すれば、重複データを作成させずに行列を入れ替えることが可能です。

構文と引数

  • 365
  • 2019
  • 2016
  • 2013
  • 2010
  • 2007

=TRANSPOSE(配列)

引数 必要性 内容
配列 必須 行列変換を行うワークシートの配列orセル範囲を指定します。配列の行列変換を行うと元の配列の第1行が新しい配列の第1列になり、元の配列の第2行が新しい配列の第2列になります。

TRANSPOSE関数の解説

  • ・TRANSPOSE関数は、縦方向のセル範囲を横方向に、横方向のセル範囲を縦方向に変換します。
  • ・TRANSPOSE関数は、セル配列数式の列数および行数とそれぞれ同数の行数および列数のセル範囲に、範囲として入力する必要があります。
  • ・TRANSPOSE関数を利用すると、ワークシートにある配列の縦と横を逆転させることができます。
出典:Microsoft - Office サポート

TRANSPOSE関数の使用例

横方向のデータを縦方向に変換する

=TRANSPOSE(A1:C1)

セルA1:C1の横1行のデータを縦1列に転置します。配列数式として入力(Ctrl+Shift+Enter)するか、Microsoft 365ではそのままEnterで確定できます。

2行3列の範囲を3行2列に変換する

=TRANSPOSE(A1:C2)

セルA1:C2の2行3列のデータを3行2列に転置します。結果を入力するセル範囲(3行2列)を選択してから配列数式として入力します。

関連する関数

  • ROW関数:指定したセルの行番号を返す関数
  • ROWS関数:配列またはセル参照の行数を返す関数
  • RTD関数:COMオートメーションに対応したプログラムからリアルタイムのデータを取得する関数

よくある質問

Q. TRANSPOSE関数は何をするときに使いますか?

TRANSPOSE関数は、配列で指定された範囲のデータの行列変換を行う関数です。 まずは入力する引数と返り値の意味を確認すると、実務で迷いにくくなります。

Q. TRANSPOSE関数がうまく動かないときは何を確認すればよいですか?

まず 引数 の指定方法を見直し、参照範囲、検索値、一致条件、列番号や行番号 を確認してください。

よくある失敗例・エラー対処

TRANSPOSE関数で期待通りの結果にならないときは、次の点を確認してください。

  • 引数 の指定が関数の仕様どおりか確認する
  • 完全一致か近似一致かを意図どおりに選んでいるか確認する
  • 参照範囲の列追加や並び替えでずれていないか確認する

まとめ

このページでは、TRANSPOSE関数について以下を確認しました。

  • ・TRANSPOSE関数でできることと基本の使いどころ
  • ・構文と引数の意味
  • ・TRANSPOSE関数の使用例