【エクセル】表の行と列のデータを入れ替えする方法を紹介。数式で参照させる方法も

エクセルの表の行と列のデータを入れ替えする方法を紹介。数式で参照させる方法も。

社内システムからアウトプットされたExcelの表の並びが分かりづらかったり、Excel(エクセル)の表の作り方を見直す時に、表の行と列を入れ替えたい場合があると思います。

今回は、下図のように、①行と列を入れ替えて値や数式で貼り付ける方法と、➁行と列を入れ替えた表を作っても参照(リンク)された状態で貼り付ける方法をご紹介します。

行と列を入れ替えする方法

行と列を入れ替えて値や数式で貼り付ける
行と列を入れ替えて値や数式で貼り付ける

数式でリンクする行と列の入替方法

行と列を入れ替えた表を作っても参照(リンク)された状態
行と列を入れ替えた表を作っても参照(リンク)された状態

表のデータを行と列で入れ替えする方法(値や数式で貼り付け)

まず始めに行と列を入れ替えて値や数式で貼り付ける方法をご紹介します。

今回は説明用に下の商品リストを使います。金額のE列と合計の5行目には乗数やSUMの数式が挿入されています。

行の列を入替したいExcelの表
行の列を入替したいExcelの表

手順1.表全体を選択しコピー
表の任意のセルをクリックし、「Ctrl」キー+「A」キーで表全体を選択し、「Ctrl」キー+「C」キーでコピーします。(カーソルで選択してもOKです)

表全体を選択しコピー
表全体を選択しコピー

手順2.「右クリック」メニューから「形式を選択して貼り付け」をクリック
貼り付けたいセルで右クリックし、「右クリック」メニューから「形式を選択して貼り付け」をクリックします。

「形式を選択して貼り付け」をクリック
「形式を選択して貼り付け」をクリック

手順3.「行/列を入れ替え」にチェックをいれてOK
「形式を選択して貼り付け」画面から貼り付け方法を選択します。値や数式や罫線も貼り付ける場合は、「すべて」に●を入れます。値のみで貼り付ける場合は、「値」に●を入れてください。

画面下にある行/列を入れ替えにチェックを入れて「OK」をクリックしてください。

「形式を選択して貼り付け」画面の「行/列を入れ替え」にチェック
「形式を選択して貼り付け」画面の「行/列を入れ替え」にチェック

手順4.貼り付け結果を確認
貼り付けた結果、行と列の入れ替えが完了したことが確認出来ます。

行と列を入れ替えて貼り付けが完了(クリックで拡大)
行と列を入れ替えて貼り付けが完了

また、数式や罫線も貼り付いていることが確認出来ます。

行と列を入れ替えても数式が貼り付いている
行と列を入れ替えても数式が貼り付いている

行と列の入れ替え方法(参照された状態)

次に紹介するのは、行と列を入れ替えた表を作成しても、セルの情報が参照された状態で貼り付ける方法です。

さきほどの貼り付け方法では、貼り付け前の表の値を変更しても貼り付け後の表の値は変わってくれません。

今から紹介するのは、TRANSPOSE関数(トランスポーズ関数)を使った貼り付け方法です。

このTRANSPOSE関数(トランスポーズ関数)の使い方は、ExcelのバージョンがExcel2019以前か、Microsoft365を利用しているかによって少しだけ異なりますので、使っているバージョンを確認してから👇の手順を見てくださいね。

貼り付け前の表とリンクするから、何度も貼り付け直す必要がないから便利だよ。
ただちょっと使い方が独特です。

バージョン:Excel2019以前の場合

手順1.貼り付け範囲を選択
行と列が入れ替わる前提で貼り付け先の範囲を選択します。選択する行数と列数を間違わないようにしてください。

貼り付け範囲を選択
貼り付け範囲を選択

手順2.範囲を選択したまま数式を入力
手順1の範囲の選択は解除しない状態で、左上のセルに=TRANSPOSE(と入力します。

範囲を選択した状態のまま、「=TRANSPOSE(」と入力
範囲を選択した状態のまま、「=TRANSPOSE(」と入力

手順3.表をカーソルで選択して、”)”で関数を完成
カーソル操作で表を選択すると表の範囲(B2:E7)が関数内に挿入がされますので、その次に”)”(右カッコ)で関数を完成させます。

※関数作成に続きがあるのでEnterは押さないでください

=TRANSPOSE(B2:E7)

TRANSPOSE関数を完成させる
TRANSPOSE関数を完成させる

手順4.「Ctrl」キー+「Shift」+「Enter」キーで確定
この関数の最も重要な手順がこの操作です。

「Ctrl」キー+「Shift」を押しながら「Enter」キーを押してください。数式バーを見た時に、{ }でTRANSPOSE関数が囲まれていて、行と列が入れ替わっていれば完了です。

TRANSPOSE関数を3つのキーを押しながら確定させる
TRANSPOSE関数を3つのキーを押しながら確定させる

手順5.表が参照(リンク)しているか確認
最後に貼り付けた表が貼り付け前の表を参照しているか(リンクしているか)を確認します。

TRANSPOSE関数で数値の変更が反映されている
TRANSPOSE関数で数値の変更が反映されている

バージョン:Microsoft365の場合

続いて、Microsoft365でのTRANSPOSE関数の使い方です。office365は動的配列数式として反映されるため、貼り付け方はExcel2019以前の方法よりシンプルです。

手順1.空いたセルに数式を入力
貼り付けるセルに、「=TRANSPOSE(」と入力します。

「=TRANSPOSE(」と入力
「=TRANSPOSE(」と入力

手順2.表をカーソルで選択して、”)”で関数を完成
カーソル操作で表を選択すると表の範囲(B2:E7)が関数内に挿入がされますので、その次に”)”(右カッコ)で関数を完成させて、「Enter」キーを押します。

表をカーソルで選択して、”)”(右カッコ)で閉じてEnter
表をカーソルで選択して、”)”(右カッコ)で閉じてEnter

手順3.行と列の入れ替わりを確認
Microsoft365の場合は、表のサイズに合ったセル範囲も自動でTRANSPOSE関数を挿入してくれるので、行と列の入れ替わりはこれで完成です。

必要なセル範囲の行と列が入れ替わる
必要なセル範囲の行と列が入れ替わる

手順4.表が参照(リンク)しているか確認
最後に貼り付けた表が貼り付け前の表を参照しているか(リンクしているか)を確認します。

TRANSPOSE関数で行と列が入れ替り、かつ数式で参照されている状態
TRANSPOSE関数で行と列が入れ替り、かつ数式で参照されている状態