ExcelのVBAを使用しているときに、知っていると便利なのがシートを追加したり削除する方法。
最初は難しそうな印象を持っていましたが、実際にコードを作成してみるととても簡単にできます。
そこでこの記事ではVBAでシートの追加と名前追加、削除する方法を紹介します。
- シートの追加方法
- シートの名前変更
- シートの削除方法
- 実際のコードでの解説
講師コードをコピペできるように参考のコードも載せていますので、是非活用していきましょう。


VBAでシートを追加する方法
VBAでコードを記述し、新規シートを一番左端に追加する方法から紹介します。


まずはAlt+11でVBAの入力画面を呼び出し、その後標準モジュールを挿入しましょう。
シートを一番左端に追加し、名前を付ける場合は以下のコードで作成することができます。
Sub シート追加()
Worksheets.Add before:=Worksheets(1)
Worksheets(1).Name = “一覧表”
End Sub
シートの後ろに追加する方法
一番左端のsheetの後ろに追加したい場合はafterを使います。
Sub シート追加()
Worksheets.Add after:=Worksheets(1)
End Sub
一番最後のシート名も変更する場合
一番最後にシートを追加し、さらに修正する場合は以下のように入力しましょう。
Sub シート追加()
Worksheets.Add after:=Worksheets(Worksheets.Count)
Worksheets(Worksheets.Count).Name = “一覧表”
End Sub
シートの一番最後に追加する方法
一番最後にシートを追加する場合はworksheets.countを使用することで作成できます。
Sub シート追加()
Worksheets.Add after:=Worksheets(Worksheets.Count)
End Sub
シートを削除する方法
次に、シートを削除する方法を紹介します。
以下のコードをコピペしましょう。
Sub シート削除()
ActiveSheet.Delete
End Sub
実際に動作すると、シートの削除を行えます。


VBAテクニックで作業効率化を実現するヒント
ここまでシートの削除や名前変更、シートの削除について紹介しましたが、実際の仕事ではさらに応用する場面が多くあります。



特にシート追加と名前を同時にする場面としては、「月次レポート作成」や「テンプレート管理」といった場面で、月名を自動で変更したいことがよくあります。
月名を更新するシートの作成方法
例えばシート名が「1月」の場合、更新ボタンを作成したら「2月」というように次の月の名前にする方法です。
以下のコードをコピペしましょう。
Sub 次月更新()
Dim Ws As Worksheet
Dim フラグ As Boolean
Dim 月の名前 As String
‘来月が何月か調べる
月の名前 = Replace(ActiveSheet.Name, “月”, “”) + 1
‘現在のシート名が「12月」の場合来月は1月
If 月の名前 = 13 Then
月の名前 = 1
End If
フラグ = False
‘すでに同じ月のシートが存在しないか
For Each Ws In Worksheets
If 月の名前 & “月” = Ws.Name Then
フラグ = True
Exit For
End If
Next
If フラグ = False Then
‘シートコピー作成し、シート名を変更する
ActiveSheet.Copy After:=ActiveSheet
ActiveSheet.Name = 月の名前 & “月”
Else
‘同じシート名があった場合はメッセージのみ
MsgBox “すでに来月と同じシート名が存在しています。”
End If
End Sub
実際に先ほどのコードを試すと、以下の画像のようにシートをコピーしたうえでシート名が1月の次に2月になっています。





翌月に更新できるとなると、仕事でも活用できることが多いですね!
効率化のコツや注意点
ここまでシートを操作する方法を解説しましたが、VBAを使用するときは基本的な部分を知っているか知らないかで応用できる幅が大きく変わります
以下の記事も知っておくことで、ネットで知ったコードなどをさらに応用できることが増えるでしょう。
以下のExcel記事もおすすめです。
また、VBAの基本を幅広く勉強する場合は以下のまとめ記事を一つずつ見ていくことがおすすめです。


まとめ
今回はVBAを使用し、シートの追加や削除、シート名の変更方法について紹介しました。
特にシートを次月の名前に更新する方法は便利なので、実際の仕事でも使用しています。
Excelの機能を使いこなすと、仕事の効率化から大きな時間短縮に繋がります。
仕事術のスキルが増えるとプライベートの時間を時間を増やすことができますので、当サイトで得た知識を是非活用していきましょう。



Excelのマクロ・VBAの全15回分学んだあとは以下の記事のまとめ記事もみてみましょう!
以下のExcel記事もおすすめです。









