【エクセルマクロ】変数を使用して行を削除:使用例6選

vba-行削除-変数使用-アイキャッチ ExcelVBA

ExcelVBAで、変数を使用して行を削除する方法をご紹介します。

このページのマクロコードは、コピペで使えます。

動画では実際の動作を確認できます。

変数使用で行削除(特定行)

以下のマクロを実行すると、アクティブシートの指定行を削除します。


Sub 行を削除()

Dim Target As Long

    Target = 2

    ActiveSheet.Rows(Target).Delete

End Sub
マクロ実行後

アクティブシートの2行目を削除します。
 

 

変数使用で行削除(複数行)

以下のマクロを実行すると、アクティブシートの複数行を削除します。


Sub 行を削除()

Dim Target As Long

    Target = 2

    ActiveSheet.Range(Target & ":4").Delete

End Sub
マクロ実行後

アクティブシートの2行目から4行目を削除します。
 

 

変数使用で行削除(複数行)

以下のマクロを実行すると、アクティブシートの複数行を削除します。


Sub 行を削除()

Dim Row1 As Long
Dim Row2 As Long

    Row1 = 2
    Row2 = 4

    ActiveSheet.Rows(Row1 & ":" & Row2).Delete

End Sub
マクロ実行後

アクティブシートの2行目から4行目を削除します。
 

 

変数使用で行削除(離れた行)

以下のマクロを実行すると、離れた行を削除します。


Sub 行を削除()

Dim Row1 As Long
Dim Row2 As Long

    Row1 = 2
    Row2 = 4

    Union(Rows(Row1), Rows(Row2)).Delete

End Sub
マクロ実行後

アクティブシートの2行目と4行目を削除します。
 

 

変数使用で行削除(指定行以降)

以下のマクロを実行すると、指定行以降を削除します。


Sub 行を削除()

Dim Row1 As Long
Dim LastRow As Long

    '最終行
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row

    '削除開始行
    Row1 = 2

    '行削除
    ActiveSheet.Range(Row1 & ":" & LastRow).Delete

End Sub
マクロ実行後

アクティブシートの2行目から最終行までを削除します。
 

 

変数使用で行削除(指定行以降)

以下のマクロを実行すると、ループ処理で指定行以降を削除します。


Sub 行を削除()

Dim Row1 As Long
Dim LastRow As Long
Dim i As Long

    '削除開始行
    Row1 = 2
    
    '最終行
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row

    '最終行から削除開始行まで、逆ループ
    For i = LastRow To Row1 Step -1
    
        '行削除
        ActiveSheet.Rows(i).Delete
    
    Next i

End Sub
マクロ実行後

アクティブシートの最終行~2行目までループして、行を削除します。
 

 

 
この記事がお役に立ちますと幸いです。
 

【エクセルマクロ】変数を使用して列を削除:使用例5選
...

 

「Excel自動化[最強]時短仕事術」
自動化の基礎と時短に役立つテクニック解説書
毎日の定型業務を手際良く行え、大幅な業務効率化を実現!