vba日期大于小于表达式错误

时间:2012-10-08 13:29:29

标签: vba ssrs-2008

您好我有以下代码

Public Function checkDate(ByVal SomeDate As String) As Integer
If CDate("Sep 24 2012") >= CDate(SomeDate) Then
     Return 1
End If
Return 0
End Function

当我致电checkDate(“2012年1月1日”)或9月24日之前的任何日期时,我会返回1。

但是,当我拨打checkDate(“2012年9月25日”)或9月24日之后的任何其他日期时,我会返回#error。

有人可以解释为什么会发生这种情况而不是0返回值吗?

2 个答案:

答案 0 :(得分:1)

VBA不使用Return

Public Function checkDate(ByVal SomeDate As String) As Integer
    If CDate("Sep 24 2012") >= CDate(SomeDate) Then
        checkDate = 1
    Else
        checkDate = 0
    End If
End Function

答案 1 :(得分:0)

此代码在VBA中适用于我。我没有检查这是否适用于SSRS。

Public Function checkDate(ByVal SomeDate As String) As Integer
Dim dteCheck As Date
Dim dteSomeDate As Date

dteCheck = CDate("Sep 24 2012")
dteSomeDate = CDate(SomeDate)

If dteCheck >= dteSomeDate Then
    checkDate = 1
Else
    checkDate = 0
End If
End Function