エクセルマクロで、特定シートより右側・左側にあるシートを全て削除するVBAコードをご紹介します。
動画で動作確認ができます👇
特定シートより右側を全て削除
以下のExcelVBAを実行すると、特定シート以降をすべて削除します。
Sub 特定シートの右側を全削除()
Dim WS As Worksheet
Dim Target As String
Dim Chk As Long
'このシートより右にあるシートが削除対象
Target = "Sheet3"
Chk = 0
'シートをループ
For Each WS In Worksheets
'「Target」シートだったらフラグ付け
If WS.Name = Target Then
Chk = 1
Else
If Chk = 1 Then
'シート削除
Application.DisplayAlerts = False
WS.Delete
Application.DisplayAlerts = True
End If
End If
Next WS
End Sub
[Target = “Sheet3”] にて指定したシートより、
右に存在するシートを一括削除します。
[Target] で指定したシートは削除しません。
特定シートより左側を全て削除
以下のExcelVBAを実行すると、指定シートより左にあるシートを自動削除します。
Sub 特定シートの左側を全削除()
Dim WS As Worksheet
Dim Target As String
'このシートより左にあるシートが削除対象
Target = "Sheet3"
'シートをループ
For Each WS In Worksheets
'「Target」シートじゃなければシート削除
If WS.Name <> Target Then
Application.DisplayAlerts = False
WS.Delete
Application.DisplayAlerts = True
Else
'「Target」シートが出現したらループを抜ける
Exit For
End If
Next WS
End Sub
[Target] で指定した「Sheet3」より、
左に存在するシートを一括削除します。
[Target] で指定したシートは削除しません。
この記事がお役に立ちますと幸いです。
【エクセルマクロ】シートの追加・削除を自動化:超便利12選
...
「Excel自動化[最強]時短仕事術」
自動化の基礎と時短に役立つテクニック解説書
毎日の定型業務を手際良く行え、大幅な業務効率化を実現!
リンク