首页 > 解决方案 > 是否为空返回“”

问题描述

我有以下代码,但是如果 RefDate 为空白,则返回#Type!。我可以添加一行说 ifNull = ""

Public Function Status(ByVal RefDate As Date) As String

    Dim Description As String

    Select Case DateDiff("d", Date, RefDate)
        Case > 60
            Description = "In date"
        Case > 0
            Description = "Expiring"
        Case Else
            Description = "Expired"
    End Select

    Status = Description

End Function

如果为 Null,则返回 "" 无或空白

标签: vba

解决方案


试试这个,我也改变了输入数据类型

Public Function Status(ByVal RefDate As Variant) As String

    Dim Description As String

    If Len(RefDate) > 0 and IsDate(RefDate) Then

        Select Case DateDiff("d", Date, RefDate)
            Case Is > 60
                Status = "In date"
            Case Is > 0
                Status = "Expiring"
            Case Else
                Status = "Expired"
        End Select

    Else

        Status = "No date"

    End If


End Function

推荐阅读