ワークシートを削除するには、Deleteメソッドを使います。

削除前には警告メッセージが表示されるので、表示させたくない場合は、事前にDisplayAlerts = Falseを実行します。


シートの削除方法

VBA入力画面
Excel VBA入力画面

入力したコードです。

Sub シートの削除()
    Dim s As String
    
    s = InputBox("削除するシート名を入力してください", "シートの削除")

    Sheets(s).Delete
End Sub


Sub シートの削除_警告なし()
    Dim s As String
    
    s = InputBox("削除するシート名を入力してください", "シートの削除")
    Application.DisplayAlerts = False
    Sheets(s).Delete
    Application.DisplayAlerts = True
End Sub

プログラムの説明


Subプロシージャの宣言
Sub シートの削除()
文字型変数の宣言
Dim s As String
InputBox関数で、削除するシート名を入力 (InputBox関数を参照)
s = InputBox("削除するシート名を入力してください", "シートの削除")
Deleteメソッドの実行
Sheets(s).Delete
プロシージャの終了
End Sub

Subプロシージャの宣言
Sub シートの削除_警告なし()
文字型変数の宣言
Dim s As String
InputBox関数で、削除するシート名を入力
s = InputBox("削除するシート名を入力してください", "シートの削除")
警告を表示させない
Application.DisplayAlerts = False
Deleteメソッドの実行
Sheets(s).Delete
警告の設定を戻す
Application.DisplayAlerts = True
プロシージャの終了
End Sub

シートの削除マクロの実行画面

j実行前のシートです。Sheet1〜Sheet5まであります。
実行前のシート

シートの削除マクロの2種を実行します。
シートの削除マクロ

削除するシート名を入力します。ここではSheet3を削除します。
削除するシート名を入力

シートの削除マクロを実行すると、「選択したシートに、データが存在する可能性があります。データを完全に削除するには、[削除]をクリックしてください。」と警告メッセージが表示されます。
警告メッセージ

シートの削除実行後の画面です。Sheet3がなくなっています。
シート削除後のシート

Excelマクロのサンプルファイル:フリーダウンロード








Copyright (C) excel.usefulhp.com All rights reserved.