この記事では、エクセルでのセルや行入れ替え(上下のデータの順番:ショートカット:できない時:やマクロも)の方法について解説していきます。
具体的には、
・補助列に番号を逆に振り、並び替え
・切り取りと挿入のショートカットを組み合わせる
・マクロの活用
などで対応できます。
それでは詳しく見ていきましょう。
エクセルでの行の上下を入れ替えする方法(補助列作成&ソートでデータの上下を入れ替え)
まずは、補助列に番号を振る&並び替え機能を活用で、エクセルでの行の上下を入れ替える方法を確認していきます。
ここで、アイスとマシュマロの行を上下入れ替えしてみます。
補助列(ここではA列)にて、下に持っていきたい行を2、上に持っていきたい行を1と入力しましょう。
その上で、データ上下を入れ替えたい行を、補助列の番号含めて選択しましょう。
データタブから、AZ↓(昇順)をクリックします。
これでデータの上下を入れ替える処理が完了です。
状況に応じて、補助列の番号を消したり、行ごとではなくセルのみの上下を選択してみてくださいね。
エクセルでの行入れ替えのショートカット(データ上下の順番)【切り取り+挿入の活用】
さらには、切り取り+挿入のショートカット活用で、行の上下を入れ替えて見ましょう。
アイス記載の行(ここでは4行目)を選択の上、Ctrl + Xで切り取り範囲をここに指定します。
その上で、挿入したい行の一個下の行を選びます(ショートカット挿入時に上に行が入ることになるので、実質ここが入れ替えの対象行)。今回では、6行目がこれに相当しますね。
続けて、Ctrl + Shift + +キーを同時押しすることで、挿入実行され、行の上下を入れ替えることができました。
好みで使い分けてくださいね。
エクセルでの行の上下入れ替えの方法(マクロ)
なお、マクロ(VBA)を活用して行の上下入れ替えをするのもありですね。
以下のコードをAlt +F11でVBE画面を開き、貼り付けてくださいませ(マクロ有効ブック、.xlsm)。
Sub SwapRows()
Dim inputStr As String
Dim rowNumbers As Variant
Dim firstRow As Long, secondRow As Long
Dim ws As Worksheet
' ユーザーに行番号を入力させる
inputStr = InputBox("入れ替える行番号をカンマ区切りで入力してください(例: 3,5)")
' 入力された値をカンマで分割
rowNumbers = Split(inputStr, ",")
' 入力値が2つではない場合は警告を出して終了
If UBound(rowNumbers) + 1 <> 2 Then
MsgBox "2つの行番号をカンマ区切りで入力してください。"
Exit Sub
End If
' 行番号を整数に変換
firstRow = Val(rowNumbers(0))
secondRow = Val(rowNumbers(1))
' 作業用シートの作成(存在しない場合)
On Error Resume Next
Set ws = ThisWorkbook.Worksheets("TempSwap")
If ws Is Nothing Then
Set ws = ThisWorkbook.Worksheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))
ws.Name = "TempSwap"
ws.Visible = xlSheetVeryHidden ' シートを隠す
End If
On Error GoTo 0
' 一時的に第一行の内容を作業用シートにコピー
Rows(firstRow).Copy Destination:=ws.Rows(1)
' 第二行の内容を第一行にコピー
Rows(secondRow).Copy Destination:=Rows(firstRow)
' 作業用シートの内容を第二行にコピー
ws.Rows(1).Copy Destination:=Rows(secondRow)
Application.CutCopyMode = False
MsgBox "行 " & firstRow & " と行 " & secondRow & " を入れ替えました。"
End Sub
Alt+F8で上のマクロを実行しましょう。
インプットボックスが出ますので、入れ替えたい行をカンマ区切りで入れる仕様になっています。
ここでは、4,5としてみます。
以下のようメッセージが出て、行の上下の入れ替えが実行されます!
まとめ エクセルでのセルの上下入れ替え(ショートカットやマクロも:データの順番)の方法
ここでは、【Excel】エクセルでの行入れ替え(データの上下:ショートカットやマクロも:セルの順番)の方法について確認しました。
エクセル操作になれ、さらに快適な生活を送っていきましょう!
コメント