Excel VBA 3行マクロ~17回 20日後とか、1ヶ月後の日付を入力するマクロ

1ヶ月後の日付を入力するマクロ

翌月20日の日付を求める
翌月20日の日付を求めるマクロ

3行マクロ 16回

20日後とか、次月(翌月)などの日付を入力するマクロ

今までシートに関数を入力して、翌月の20の日付を出していましたが、今回は、マクロで来月の20日の日付を出します。
このマクロは、他にも、来月の10日や、当月末の日付や、来月末の日付とかも、表示させることができます。
(サンプルファイルは、こちらから 3行マクロ17回サンプルデータ
Excelバージョン:Excel20192016201320102007

請求書などに、マクロで翌月20日の日付を入れる

以下の請求書にマクロで入金の締切日を入力します。

使うのは、DateSerialという関数です。
<構文>
DateSerial(年, 月, 日)
Excelは、日付や時間をシリアル値という連続した数値で管理しています。
シリアル値から日付を抜き出す関数は、Date関数です。
さらに、その日付から年、月、日だけを取り出すのが、
Year関数、Month関数、Day関数となります。

上記のDateSerial関数に、Year関数、Month関数を当てはめてやります。
年は、そのまま
月は、来月なので、+1とし
日付は来月の20日ですから、20とします。

DateSerial(year(Date), month(Date)+1, 20)
セルB17 Range("B17") のValueに上記のコードを当てはめます。
コードです。

Sub 締め切り日の入力1()
    Range("B17").Value = DateSerial(Year(Date), Month(Date) + 1, 20)
End Sub


翌々月の10日なら、月は+2、日付は10で、
以下のコードです。

Sub 締め切り日の入力2()
    Range("B17").Value = DateSerial(Year(Date), Month(Date) + 2, 10)
End Sub
        

マクロで当月末の日付を取り出したい

当月末の日付を取り出したい時は、
以下のコードです。

Sub 月末日付の入力()
    Range("B17").Value = DateSerial(Year(Date), Month(Date) + 1, 0)
End Sub
        

来月末の日付を取り出す時は、
このようなコードです。
Sub 来月末日付の入力()
    Range("B17").Value = DateSerial(Year(Date), Month(Date) + 2, 0)
End Sub
        
となります。

今日はこれまでです。お疲れ様でした。

こちらもおすすめ