教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA シート操作】シートを削除(Delete)にするにはどうすればいいの?教えて!

f:id:m_kbou:20210506102944p:plain

シートを削除するにはDeleteメソッドを使用します。シートを削除する場合には警告メッセージが表示されます。また、一度削除したシートは元に戻す事ができませんので予め注意が必要となります。このシートを削除する方法について紹介します。

 

 

構文

記述方法は以下の通りとなります。

Activesheet.Delete

Worksheets(”[シート名]”).Delete

[説明]:

アクティブになっているシートを削除したい場合は

 「Activesheet.Delete」

と記述します。また、特定のシートを削除したい場合には

 「Worksheets(”[シート名]”).Delete」

と記述します。

[シート名] 削除したいシート名を記述します。
※「”」(ダブルクォーテーション)で囲みます。

[記述例]:

ActiveSheet.Delete
Worksheets("Sheet2").Delete

 

使い方

使い方について具体的に説明します。

アクティブシートを削除する方法

アクティブシートを削除する方法について説明します。

[プログラミング例]:

Sub サンプル()

  ActiveSheet.Delete
  MsgBox "アクティブシートを削除しました。"

End Sub

内容は、「アクティブシートを削除し、最後にMsgBoxで”アクティブシートを削除しました”のメッセージを表示して下さい。」との意味になります。

f:id:m_kbou:20210301080612p:plain

※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

①<実行>ボタンはSheet1シートに登録されており、上記のプログラミング例のプログラムが登録されています。この時点ではブックにはSheet1・Sheet2・Sheet3シートの3シートがあり、Sheet1シートがアクティブシートになっています。<実行>ボタンをクリックします。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210301080627p:plain

②以下の削除確認メッセージが表示されるため、<削除>ボタンをクリックします。

f:id:m_kbou:20210301080641p:plain

③結果は以下の様になります。Sheet1シートが削除されるため、Sheet2・Sheet3シートのみが残り、MsgBoxで「アクティブシートを削除しました。」が表示されます。

f:id:m_kbou:20210301080651p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

アクティブシートを削除する方法についての説明は以上です。

 

指定したシートを削除する方法

指定したシートを削除する方法について説明します。

[プログラミング例]:

Sub サンプル()

  Worksheets("Sheet2").Delete
  MsgBox "Sheet2シートを削除しました。"

End Sub

内容は、「Sheet2シートを削除し、最後にMsgBoxで”Sheet2シートを削除しました。"のメッセージを表示して下さい。」との意味になります。

f:id:m_kbou:20210301084119p:plain

※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

①<実行>ボタンはSheet1シートに登録されており、上記のプログラミング例のプログラムが登録されています。この時点ではブックにはSheet1・Sheet2・Sheet3シートの3シートがあります。<実行>ボタンをクリックします。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210301084142p:plain

②以下の削除確認メッセージが表示されるため、<削除>ボタンをクリックします。

f:id:m_kbou:20210301084203p:plain

③結果は以下の様になります。削除対象シートをSheet2シートとしたため、Sheet2シートが削除され、Sheet1・Sheet3シートのみが残り、MsgBoxで「Sheet2シートを削除しました。」が表示されます。

f:id:m_kbou:20210301084248p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

指定したシートを削除する方法についての説明は以上です。

 

おわりに

今回はシートを削除する方法について説明しました。ブック内の全てのシートを削除することはExcelの仕様上できないため、実行した場合はエラーになります。予め注意して下さい。