VBA~WorksheetFunction.EDateメソッド~Excel
VBAで開始日から起算して、指定された月数に応じて1か月前や1か月後等の日付を計算したい場合はWorksheetFunction.EDateメソッドを使います。
書き方
WorksheetFunction.EDate(開始日, 月)
例として下の画像において下のコードを実行するとセルA2を基準日としてセルB2,C2,D2にそれぞれ1か月前、1か月後、2か月後の日付が表示されます。
Sub test1() Range("B2") = WorksheetFunction.EDate(Range("A2"), -1) Range("C2") = WorksheetFunction.EDate(Range("A2"), 1) Range("D2") = WorksheetFunction.EDate(Range("A2"), 2) End Sub