【エクセルマクロ】1か月分の日付のシート作成:作業効率アップ

エクセルマクロ_1か月分シート作成-アイキャッチ エクセルマクロで効率化する

エクセルマクロで、1か月分の日付のシートを作成するVBAコードをご紹介します。

1日1シートとして、一か月分のシートを自動生成します。

このページのマクロコードは、コピペで使えます。
ぜひお試しください!

1か月分の日付のシート作成

以下のExcelVBAを実行すると、1か月分のシートをコピーします。


Sub 連続したシート自動作成()

Dim First_Sht As Worksheet
Dim Months As Long
Dim Mydate As Long
Dim i As Long
Dim ShtName As String

    '最初のシートを変数格納
    Set First_Sht = ActiveSheet
    
    '最初の日付
    Mydate = First_Sht.Range("A1")

    '一か月が何日間あるか計算
    Months = DateAdd("m", 1, Mydate) - Mydate
    
    '一か月の日数ループ
    For i = 1 To Months
    
        If i = 1 Then
            '最初のシートは、シート名を変更するのみ
            First_Sht.Name = Right(Format(Mydate, "yyyymmdd"), 4)
        Else
        
            'シート作成し、シート名を日付にする
            Sheets.Add After:=ActiveSheet
            ActiveSheet.Name = Right(Format(Mydate, "yyyymmdd"), 4)
            ActiveSheet.Range("A1") = Format(Mydate, "yyyy/mm/dd")
        
        End If
        
        '日付を1日プラス
        Mydate = Mydate + 1

    Next i
    
    MsgBox "完了"

End Sub

 

マクロ実行前

シート内のセルA1に日付を入力します。(1日)


 

マクロ実行後

ファイル内に1か月分のシートを自動挿入します。

各シートのセルA1に、日付を自動入力します。


 
 
この記事がお役に立てれば幸いです。
 

【エクセルマクロ】ワークシート処理を自動化する:超便利29選
...

 

「ノンプログラマーのGAFA部長が教えるExcelマクロ入門」
挫折につながるエラーの原因も先回りして丁寧に解説
マクロのたった1割を学べばエクセル業務の9割以上は効率化できる