INDEX
Excelの行を入れ替える方法

Excelでは、行の順番を入れ替えたい場面がよくあります。例えば、3行目と4行目を入れ替えたり、誤って入力したデータの順番を修正したりする場合です。
この記事では、ドラッグ操作で簡単に入れ替える方法から、コピー&貼り付けを使う方法、VBAを利用する方法まで紹介します。
方法1:Shiftキーを使ってドラッグする(おすすめ)
最も簡単なのは、Shiftキーを押しながらドラッグする方法です。
手順(3行目と4行目を入れ替える例)
- 入れ替えたい3行目を行番号ごと選択します。
- 選択範囲の枠線にマウスカーソルを合わせ、四方向の矢印(移動カーソル)が表示されるのを確認します。
- Shiftキーを押したまま、4行目の下までドラッグします。
- マウスボタンを離すと、3行目と4行目が入れ替わります。

この方法はデータをコピーする必要がなく、最も手軽に行を並べ替えられます。
方法2:切り取りと挿入を使う
ドラッグ操作が利用できない場合は、切り取りと挿入を利用する方法もあります。
手順
- 入れ替えたい行を選択します。
- Ctrl + Xで切り取ります。
- 挿入したい位置の行番号を右クリックします。
- 「切り取ったセルの挿入」を選択します。
この方法なら、データを上書きせずに行の位置を変更できます。
方法3:空いている行を利用して入れ替える
行を完全に入れ替えたい場合は、一時的な空き行を利用する方法もあります。
手順
- 3行目を空いている行へ移動またはコピーします。
- 4行目を3行目へ移動します。
- 一時的に保存した3行目を4行目へ戻します。
少し手間はかかりますが、どのバージョンのExcelでも利用できます。
方法4:VBAで行を入れ替える
同じ作業を何度も行う場合は、VBA(マクロ)を利用すると便利です。
VBAコード
Sub SwapRows()
Dim ws As Worksheet
Set ws = ActiveSheet
Dim row1 As Long
Dim row2 As Long
row1 = 3
row2 = 4
ws.Rows(row1).Cut
ws.Rows(row2 + 1).Insert Shift:=xlDown
ws.Rows(row2).Cut
ws.Rows(row1).Insert Shift:=xlDown
Application.CutCopyMode = False
End Sub
実行手順
- Alt + F11でVBAエディターを開きます。
- 「挿入」→「標準モジュール」を選択します。
- コードを貼り付けます。
- F5キー、または「実行」をクリックします。
実行すると、3行目と4行目が入れ替わります。
どの方法がおすすめ?
| 方法 | おすすめ度 | 特徴 |
|---|---|---|
| Shiftキー+ドラッグ | ★★★★★ | 最も簡単で素早い方法 |
| 切り取り+挿入 | ★★★★☆ | 確実に移動できる |
| 空き行を利用 | ★★★☆☆ | どの環境でも利用可能 |
| VBA | ★★★★☆ | 繰り返し作業を自動化できる |
注意点
- 行を移動すると、数式やセル参照も自動的に更新される場合があります。
- 結合セルが含まれていると、ドラッグによる移動ができないことがあります。
- Excelのバージョンによっては、Shiftキーを使ったドラッグ操作が利用できない場合があります。
- テーブル(Ctrl + T)では、通常のセル範囲とは動作が異なる場合があります。
まとめ
- 最も簡単なのは、Shiftキーを押しながらドラッグする方法。
- ドラッグできない場合は、切り取り+切り取ったセルの挿入を利用すると確実。
- 繰り返し行を入れ替える場合は、VBAを利用すると効率的。
- 結合セルやテーブルでは操作方法に注意する。
使用した機能について
この記事ではExcelの標準関数は使用していません。Shiftキーを使ったドラッグ操作や、切り取り・挿入、VBA(マクロ)を利用した行の入れ替え方法を紹介しました。