(Excel 2010 VBA) 我有一个单元格(A1),其中包含格式为mmm-yy(“自定义”类别)的日期。 敌人的例子,如果我进入1/6/13,则单元显示6月13日。没关系。 在我的VB宏中,我需要检查这个日期是月份是当月还是当年是否是当年。我不关心这一天。
答案 0 :(得分:5)
这对您有帮助吗?
Public Sub test()
d = Sheet1.Range("A1")
n = Now()
If Year(d) = Year(n) And Month(d) = Month(n) Then
MsgBox "It works"
End If
End Sub
答案 1 :(得分:2)
感谢Dave和MiVoth,我做了:
Dim xdate As Date
xdate = Worksheets("sheet1").Range("A1")
If Month(Date) = Month(xdate) And Year(Date) = Year(xdate) Then
MsgBox "OK"
Else
MsgBox "not OK"
End If
这就完成了工作!
非常感谢大家,
加迪
答案 2 :(得分:1)
这个怎么样:
Function MonthYear() As Boolean
MonthYear = False
If Not IsDate(Cells(1, 1)) Then Exit Function
If Month(Date) = Month(Cells(1, 1)) And Year(Date) = Year(Cells(1, 1)) Then
MonthYear = True
End If
End Function
如果月份和年份与当前日期相同,则该函数返回true。如果不是,则返回false。