サイトアイコン 独学エクセル塾

【TRANSPOSE関数】列と行のデータを参照のまま一瞬で入れ替える!方法とエラー対応

今回は参照状態のまま列や行を入れ替える方法についてまとめています。
こちらの関数を知らなければ「行と列を入れ替えて貼り付ける」か参照状態を
保持したい場合は1つずづ参照するようになってしまいます。

記事をご覧になれば一瞬で行と列を入れ替えることができますので
ぜひ参考にしてみてください。

それでは見ていきましょう。




■関数の仕組み

{=TRANSPOSE(参照元の配列)}

こちらの関数は配列関数になっています。
関数を確定する際には「Shift」+「Ctrl」+「Enter」を同時に押す必要があります。

■関数の使用方法について

では関数の使用方法について見ていきましょう。
下図の見本をご覧ください。

B2からE13までデータが入力されています。
今回はこちらのデータをまとめて行と列を入れ替えてみましょう。

ポイントとして行と列を入れ替える「行の数」と「列の数」を把握しておく必要があります。
行の数は2行目から13行目の「12行」
列の数はB列からE列の「4列」になります。

では手順1です。

①行と列を入れ替えた先の出力範囲を選択する

まずは出力先の範囲を選択します。
今回は「12行目」と「4列」が参照元なので「4行12列」分選択できればどこでも構いません。

見本でG2からR5を選択してみました。

②関数を入力する

では本題の関数を入力していきます。
再度関数の仕組みを見てみましょう。

{=TRANSPOSE(参照元の配列)}

ここでの参照元の配列は「B2からE13」。つまり「B2:E13」となります。

では数式バーに「{}」を除いた状態で関数を打ち込んでみましょう。

数式は上図のように「=TRANSPOSE(B2:E13)」となります。

③配列関数として確定する

先ほどは関数の入力をしてきました。
最後に配列関数としてTRANSPOSE関数を確定しましょう。

配列とは複数の列・行で構成されたデータのことです。

配列関数として確定する際には「Shift」+「Ctrl」+「Enter」を同時に押します
結果はこのようになります。

関数が「=TRANSPOSE(B2:E13)」から「{=TRANSPOSE(B2:E13)}」に変化していますね。
では関数を入力したG2からR5を見てみましょう。

狙い通り行と列を入れ替えることができました。

■よくあるエラーと対処法

それではTRANSPOSE関数を使用する中でよくあるエラーと対処方について説明します。

・出力結果が#N/Aのエラーになる。

こちらのエラーは参照範囲が反映先の範囲に対して列数または行数が足らないことが考えられます。
下図の見本をご覧ください。

参照元は6行あるのに対し、反映先は8列で関数を入力してみました。
結果として7.8行目の参照ができないことから7.8列目は#N/Aのエラーになってしまいます。

・配列の1部を変更できません

こちらのエラーは配列内のセルを編集したり、削除したりする際に発生します。

参照範囲を変更したいのであれば
セルの範囲を再選択・再入力した後に「Shift」+「Ctrl」+「Enter」を同時に押して
関数を確定してください。

内容の一部を変更したい・削除したいのであれば配列関数をすべて削除しないといけません
もし、参照元のリンクが切れてもいいのであれば指定した配列関数内すべてをコピーして
値のみ同じ位置で貼り付けることで編集可能
になります。

■別の方法で列・行を参照したまま入れ替える方法

これまではTRANSPOSE関数を用いて列・行の入れ替えを説明してきました。
配列関数はまとめて反映されるのでとても便利ですが編集などを行う際は不便です。

別の記事で通常の参照を応用して
列・行を参照状態のまま入れ替える方法をまとめていますので是非参考にしてみてください。

記事はこちらから☟

【置換の応用】フィルダウンで出来ない、列(横)方向に連続した行(縦)参照を置換を活用して実現 ► 独学エクセル塾 (dokugakuexcel.com)

■公式の説明

わかりやすいように説明したため公式と使用する語句が異なりますが

マイクロソフト公式の説明については下記のリンクを参照してください。☟

TRANSPOSE 関数 (microsoft.com)

■まとめ

いかがだったでしょうか。
知識がないと行列の入れ替えはとても手間のかかる作業ですが
今回の記事を活用して効率的に作業してみてください。

それでは次回の記事でお会いしましょう。

モバイルバージョンを終了