[VBA] ワークシートを追加/削除します

 今回は ワークシートを追加/削除するマクロ を作りましょ~。

ワークシートを追加します

 まずは一番シンプルなマクロを書いてみます。
 Add メソッド で新しいシートを追加しますよ。

 Sub AddSheet1()

  Worksheets.Add.Name = "NewSheet"

 End Sub

 実行すると NewSheet という名前の付いたシートが追加されます。このマクロでは挿入位置を何も指定していないので、今開いているシート(アクティブシート)の後ろに追加されますが、位置を指定したい場合は、Before もしくは After 引数を指定します。たとえば

 Sub AddSheet2()

  Worksheets.Add(Before:=Worksheets("Sheet1")).Name = "NewSheet"

 End Sub

とすると、Sheet1 の前に新しいシートが追加されます。

 Sub AddSheet3()

  Worksheets.Add(After:=Worksheets("Sheet1")).Name = "NewSheet"

 End Sub

とすると、Sheet1 の後ろに新しいシートが追加されるのです。複数のシートをまとめて追加したいときは Count 引数を指定します。たとえば

 Sub AddSheet4()

  Worksheets.Add Before:=Worksheets("Sheet1"), Count:=2

 End Sub

とすれば、Sheet1 の前に 2 枚のシートが追加されます。
 

ワークシートを削除します

 シートを削除するマクロはとっても簡単だけど、特に何も書かないと、手動でシートを消すときときと同じように「シートを削除すると元に戻せません」みたいなメッセージが表示されます。それが煩わしい場合は、DisplayAlerts を False にしておきましょう。

 Sub DeleteSheet()

  '警告メッセージをオフにします
  Application.DisplayAlerts = False

  Worksheets("Sheet1").Delete

 End Sub

 マクロを実行すると警告なしで Sheet1 が消えます。でもワンクリックでぱっと消えちゃうようなマクロだと「ぎゃああ! 間違えましたよー! このシートは消しちゃいかんやつですよー!」みたいなことになってしまうかもしれないので、ユーザーさんに本当に消すのかどうか確認するメッセージを出すようにしておいたほうがいいかもしれません。 ≫ VBA 辞典メニューに戻って他の記事も読んでね~♪

スポンサードリンク
末尾大型広告
末尾大型広告

コメントをどうぞ

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください