VBATips

特定シートより右側のワークシートを削除する【ExcelVBA】

ブック内のワークシートが多い状態で、特定シートより右側のシートを全て削除したい場合があります。
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】

関連記事

コメント

タイトルとURLをコピーしました