- ベストアンサー
VBAで先月、先々月を求める方法
Excel マクロで 先月、先々月を求め 「3月」「4月」(今月は5月) と表示させたいのですが、どのようにして 求めたらよいのでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
Sub test01() sg = DateSerial(Year(Date), Month(Date), 0) ssg = DateSerial(Year(Date), Month(Date) - 1, 0) MsgBox "先月は" & Month(sg) & "月、先々月は" & Month(ssg) & "月" End Sub では?
その他の回答 (2)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
回答No.3
Public Sub sample() Dim 今月 As Integer Dim 先月 As Integer Dim 先々月 As Integer 今月 = InputBox("今月は何月ですかぁ?", "月を入力して下さい", Month(Date)) 先月 = 今月 - 1 If 先月 = 0 Then 先月 = 12 先々月 = 先月 - 1 If 先々月 = 0 Then 先々月 = 12 MsgBox "先々月=" & 先々月 & "月,先月=" & 先月 & "月(今月は" & 今月 & "月)" End Sub
質問者
お礼
ありがとうございます。 しかし、自動入力にしたいのでinputbox は避けたいです
- ipsum11
- ベストアンサー率21% (55/251)
回答No.1
「=EDATE(TODAY(),1)」で一ヵ月後の日付が返されます。 「1」を「-1」にすれば一ヶ月前が返されます。 後はセルの書式を変更します。 これじゃだめですか?
質問者
お礼
ありがとうございます。 これでも、できました。 お礼もうしあげます
お礼
ありがとうございます 見事、自動入力させることができました。