Excelで行と列を入れ替える方法|基本手順とTRANSPOSE関数を解説

「Excelで作成した表を縦横入れ替えたいけれど、やり方がわからない」
「行と列を入れ替えたのにうまくいかない、何が原因だろう」
Excelで行と列の入れ替えに悩んでいる方は少なくありません。
表を作成した後で、データの向きを変更したい場面は実務でよくあります。手入力で作り直すのは時間がかかり、データ量が多いほど入力ミスのリスクも高まります。
本記事では、Excelで行と列を入れ替える2つの方法について解説します。基本的なコピー&貼り付けの手順と、TRANSPOSE関数を使った方法、それぞれの特徴と使い分けまでわかりやすく説明します。
Excelの行と列を入れ替えるとは?
Excelの行と列を入れ替えるとは、表のデータを「縦方向」から「横方向」へ、またはその逆に配置を変更することです。この操作は「転置」とも呼ばれます。
例えば、横に並んでいた項目名を縦に配置したり、月別に縦に並んでいた売上データを横向きに変更したりできます。

以下のような場面で活用できます。
・月別の売上データを商品別に並べ替えたいとき
・縦に長い表を横向きに変更して印刷レイアウトを調整したいとき
・他のシステムから出力したデータの形式を自社の書式に合わせたいとき
・集計表の見せ方を変更してプレゼン資料を作成したいとき
このように、行と列の入れ替えは、データの内容はそのままに表の向きだけを変える便利な機能です。
コピー&貼り付けで行と列を入れ替える手順
最も手軽な方法は、Excelの「形式を選択して貼り付け」機能を使う方法です。以下の手順で行と列を入れ替えられます。
Step1. 入れ替えたい範囲を選択してコピーする
入れ替えたいセル範囲を選択し、Ctrl+Cでコピーします。
範囲の選択は、マウスでドラッグするか、先頭のセルをクリックしてからShiftキーを押しながら最後のセルをクリックする方法でも可能です。大きな表の場合は範囲内のセルにカーソルがあるときにCtrl+Aで選択することもできます。
Step2. 貼り付け先のセルを選択する
データを貼り付ける位置のセルを1つクリックして選択します。
貼り付け先は、元の表と重ならない位置を選ぶと安全です。行と列が入れ替わると、表のサイズも変わる点に注意してください。
Step3. 「形式を選択して貼り付け」から「行/列の入れ替え」を選択する
貼り付け先のセルを選択した状態で、右クリックして貼り付けオプションの「行/列の入れ替え」をクリックします。

ショートカットキーを使う場合は、Ctrl+Alt+Vで「形式を選択して貼り付け」のダイアログから直接表示できます。さらに効率化したい方は、Alt → H → V → Sの順にキーを押す方法もあります。

これにより、行と列が入れ替わった表を作成できます。
この方法の注意点
この方法では、元のデータとのリンクは維持されません。元のデータを変更しても、貼り付けた表には反映されない点に注意が必要です。
一度だけ入れ替えれば良い場合や、元データと切り離して管理したい場合に適した方法といえるでしょう。
TRANSPOSE関数を使って行と列を入れ替える方法
TRANSPOSE関数を使うと、元のデータと連動した入れ替えが可能です。元データを変更すれば、自動的に入れ替え後の表も更新されます。
TRANSPOSE関数の基本構文
TRANSPOSE関数の構文は以下の通りです。
=TRANSPOSE(配列)「配列」には、入れ替えたい元のセル範囲を指定します。
TRANSPOSE関数を使った手順
Step1. 貼り付け先のセルを選択する
行と列を入れ替えた表を表示したい位置の、左上のセルを選択します。
【画像:TRANSPOSE関数を入力するセルを選択する画面】
Step2. TRANSPOSE関数を入力する
数式バーに以下のように入力します。
=TRANSPOSE(A1:D5)
A1:D5の部分は、入れ替えたい元の範囲に合わせて変更してください。
Step3. Enterキーを押して確定する
Enterキーを押すと、行と列が入れ替わった表が表示されます。

※Microsoft365やExcel 2021では、スピル機能により自動的に範囲全体に結果が表示されます。それ以前のバージョン(Excel 2019以前)では、事前に出力範囲全体を選択してから、Ctrl+Shift+Enterで配列数式として入力する必要があります。
TRANSPOSE関数のメリットと注意点
TRANSPOSE関数には、以下のようなメリットがあります。
- 元データの変更が自動的に反映される
- 数式で管理できるため、再利用しやすい
- データの整合性を保ちやすい
一方で、注意点もあります。
- 元データを削除すると、#REF!エラーが表示される
- 数式が不要な場合は、「形式を選択して貼り付け」の方がシンプル
- 関数に慣れていない方には、やや難しく感じる可能性がある
元データと連動させたい場合や、定期的に更新されるレポートを作成する場合は、TRANSPOSE関数が便利です。
行と列を入れ替える際によくある質問
Q1. 行と列を入れ替えたら、書式が崩れてしまった
A. 「形式を選択して貼り付け」では、書式も同時に入れ替わります。セルの幅や高さは元の設定が引き継がれるため、表示が崩れることがあります。
貼り付け後に、列幅や行の高さを調整することで対応できます。また、条件付き書式やセルの結合がある場合は、貼り付け後に再設定が必要になることもあります。
Q2. TRANSPOSE関数でエラーが表示される
A. 以下の原因が考えられます。
- 元の範囲指定が間違っている
- 出力範囲が足りない(Excel 2019以前の場合)
- 元データが削除されている
- 数式の入力ミスがある
数式バーで範囲を確認してください。#REF!エラーが表示される場合は、元データが削除されていないか確認が必要です。
Q3. 大きな表を入れ替えたら、画面からはみ出してしまった
A. 行と列を入れ替えると、横長の表は縦長に、縦長の表は横長になります。
印刷レイアウトを調整する場合は、「ページレイアウト」タブから余白や印刷の向き(縦・横)、拡大縮小率を調整してください。1ページに収める方法については、印刷設定で「シートを1ページに印刷」を選ぶことでも対応できます。
Q4. ショートカットキーで効率化したい
A. 以下のショートカットが便利です。
- Ctrl+A:表全体を選択
- Ctrl+C:コピー
- Ctrl+Alt+V:形式を選択して貼り付けのダイアログを表示
- Alt → H → V → S:リボンから「形式を選択して貼り付け」を開く
- Ctrl+Shift+Enter:配列数式として入力(Excel 2019以前でTRANSPOSE関数を使う場合)
これらのショートカットを覚えると、マウス操作を減らして作業時間を短縮できます。
Q5. 数式や関数も一緒に入れ替わってしまう
A. 「形式を選択して貼り付け」で行と列を入れ替える場合、数式もそのまま貼り付けられます。
数式ではなく値だけを入れ替えたい場合は、元のデータをコピーした後、一度「値」として貼り付けてから、その範囲を再度コピーして「行/列の入れ替え」を実行してください。または、「形式を選択して貼り付け」のダイアログで「値」と「行/列の入れ替え」の両方にチェックを入れる方法もあります。
まとめ
Excelで行と列を入れ替える方法には、「形式を選択して貼り付け」と「TRANSPOSE関数」の2つがあります。用途に応じて使い分けることで、効率的にデータを整形できます。
一度だけ入れ替えれば良い場合は、「形式を選択して貼り付け」がシンプルで手軽です。一方、元データと連動させたい場合や、定期的に更新されるレポートを作成する場合は、TRANSPOSE関数を使うと便利です。
本記事で紹介した方法を活用して、Excel業務の効率化を図ってみてください。
さらに、大量のデータ入力や転記作業でお困りの方は、ジーニアルAIのようなOCR・AI技術を活用したツールもご検討ください。帳票からのデータ抽出や転記作業を自動化できます。