エクセルマクロで、シートコピーして名前を翌月に変更するVBAコードをご紹介します。
このページのマクロコードは、コピペで使えます。
ぜひお試しください!
シートコピーして名前を翌月に変更
以下のExcelVBAを実行すると、アクティブシートをコピーして次月シートを作成します。
Sub 来月分のシート追加()
Dim Ws As Worksheet
Dim Flg As Boolean
Dim Get_Month As String
'来月が何月か取得
Get_Month = Replace(ActiveSheet.Name, "月", "") + 1
'現在のシート名が「12月」の場合は、来月は1月とする
If Get_Month = 13 Then
Get_Month = 1
End If
Flg = False
'すでに同名シートがないかチェック
For Each Ws In Worksheets
If Get_Month & "月" = Ws.Name Then
Flg = True
Exit For
End If
Next
If Flg = False Then
'シートコピー作成し、シート名を変更する
ActiveSheet.Copy After:=ActiveSheet
ActiveSheet.Name = Get_Month & "月"
MsgBox "完了"
Else
MsgBox "すでに来月シートが存在しています。処理停止"
End If
End Sub
マクロ実行後
シートをコピーして、シート名を次月に変更します。
アクティブシートである「3月」シートをコピーし、右側に「4月」シートを挿入します。
下図のように「1月」シートを開いた状態でマクロを実行した場合、
すでに「2月」シートが存在するためエラーメッセージを表示します。
この記事がお役に立ちますと幸いです。
【エクセルマクロ】シートの追加・削除を自動化:超便利12選
...
「Excel自動化[最強]時短仕事術」
自動化の基礎と時短に役立つテクニック解説書
毎日の定型業務を手際良く行え、大幅な業務効率化を実現!
リンク