今回はエクセルで複数のシートをまとめて削除する方法を説明します。
手動で複数シートを削除する方法
連続するシートを削除する場合:
(下図の例で、Sheet1からSheet4まで削除)
削除対象の最初のシートタブをクリックして選びます。
[Shift]キーを押しながら、削除したい最後のシートのタブをクリックします。これで連続するシートが選択されます。
選択されたタブ上で右クリックし、メニューから「削除」を選択します。
結果:Sheet1からSheet4まで削除されました。
連続しないシートを削除する場合:
(下図の例で、Sheet5、Sheet7、Sheet9を削除)
削除したいシートのタブを[Ctrl]キーを押しながらクリックして選択します。これで連続しない複数のシートが選択されます。
選択されたタブ上で右クリックし、メニューから「削除」を選択します。
結果:Sheet5、Sheet7、Sheet9が削除された。
VBAを使用して複数シートを削除する方法
Excel VBAを使用して複数のシートを削除することができます。次に示すのがサンプルコードです。
Option ExplicitSub DeleteMultipleSheets()
Dim ws As Worksheet
Application.DisplayAlerts = False ' 警告メッセージを表示しない
For Each ws In ThisWorkbook.Worksheets
If ws.Name <> "Sheet1" Then ' 削除したくないシート名を指定
ws.Delete
End If
Next ws
Application.DisplayAlerts = True
End Sub
このコードでは、”Sheet1″以外のすべてのシートを削除する例を示しています。必要に応じて、削除したくないシート名を変更してください。これらの方法を使用することで、Excelのシートを一括で削除することができます。
VBAを使用して複数のシートを削除する方法には、いくつかのアプローチが示されています。以下に、主な手順と方法を説明します。
特定のシート以外のシートをすべて削除する方法:
Option ExplicitSub DeleteAllSheetsExcept()
Dim ws As Worksheet
Application.DisplayAlerts = False' 警告メッセージを表示しない
For Each ws In ThisWorkbook.Worksheets
If ws.Name <> "保持したいシート名" Then'
保持したい
シート名を指定
ws.Delete
End If
Next ws
Application.DisplayAlerts = True
End Sub
この方法では、”保持したいシート名”以外のすべてのシートが削除されます。
複数の特定シートを削除する方法:
Option ExplicitSub DeleteMultipleSheets()
Application.DisplayAlerts = False
Worksheets(Array("Sheet1", "Sheet2", "Sheet3")).Delete
Application.DisplayAlerts = True
End Sub
インデックスを使用して複数シートを削除する方法:
Option ExplicitSub DeleteSheetsByIndex()
Application.DisplayAlerts = False
Worksheets(Array(1, 2, 3)).Delete
Application.DisplayAlerts = True
End Sub
この方法では、ブックの左から1、2、3番目のシートが削除されます。
選択状態の複数シートを削除する方法:
Option ExplicitSub DeleteSelectedSheets()
Application.DisplayAlerts = False
ActiveWindow.SelectedSheets.Delete
Application.DisplayAlerts = True
End Sub
この方法では、現在選択されているすべてのシートが削除されます。注意点:
Application.DisplayAlerts = False
を使用して、削除時の警告メッセージを非表示にしています。- ブックには最低1つのシートが必要なため、全てのシートを削除しようとするとエラーが出ます。
- 削除したくないシートがある場合は、条件分岐を利用して排除することができます。
これらの方法を使用することで、VBAを使って複数のシートを削除することができます。
定期的に特定のシートを削除する必要がある場合や、他の複雑な操作の一部としてシートを削除する場合、VBAを使うのが有効です。
終わりに
手動操作のメリットは、簡単で直感的であり、一度だけの操作に適しています。操作内容を即座に確認できる点も利点の一つです。
一方、VBA操作のメリットは、繰り返しの操作や大量の処理に適しており、複雑な条件を組み込んだ操作も容易に行えます。