1

我正在尝试将日期与去年的下个月第一天进行比较。如果 date1 的日期小于去年下个月的第一天,那么我希望它返回 true。仅当我将日期设置为提前一年时,该条件似乎才会失败。

LastRightToKnow = 7/14/2011
Dim RTK As String
RTK = ""
If [NeedsRightToKnow] = -1 And [LastRightToKnow] < DateSerial(Year(Now() - 1), Month(Now() + 1), 1) Then
RTK = "Right-To-Know"
End If

所以,根据我的理解,我认为如果today = 6/14/2012那时

DateSerial(Year(Now() - 1), Month(Now() + 1), 1)  = 7/01/2011 
LastRightToKnow = 7/14/2011 

因此7/14/2011 < 7/01/2011应该返回False。但是它会返回true......我错过了什么?

4

2 回答 2

3

由于括号的位置,您的公式已关闭:

? DateSerial(Year(Now() - 1), Month(Now() + 1), 1)
6/1/2012 
? DateSerial(Year(Now()) - 1, Month(Now()) + 1, 1)
7/1/2011 

编辑:需要在一个月内做同样的事情

于 2012-06-14T15:50:06.863 回答
1
Now() +1 = tomorrow

我想你的意思是

DateSerial(Year(Now())-1, Month(Now())-1, 1)  = 7/01/2011 
于 2012-06-14T15:45:48.150 回答