ブック内のワークシートが多い状態で、特定シートより右側のシートを全て削除したい場合があります。
flgで判断し、削除する or 削除しないを判断するだけです。
特定シートより右側のワークシートを削除する
'■特定シートより右側のワークシートを削除する Public Sub call_Del_RightSheet() Dim ws As Worksheet Dim target As String Dim flg As Boolean: flg = False '■targetのシート名を変数に入れる target = "Sheet2" '■ワークシートを1枚目からループし、フラグが来た後のシートを全て削除する For Each ws In Worksheets If ws.Name = target Then flg = True Else '■フラグを満たしたらシート削除 If flg = True Then Application.DisplayAlerts = False ws.Delete Application.DisplayAlerts = True End If End If Next ws End Sub
上記は特定シートより右側を削除していますが、特定シートより右側を削除したい場合は下記参照。
特定シートより左側のワークシートを削除する【ExcelVBA】
コメント