在 Excel VBA 中检查对象是否为 Null

Dav*_*vid 2 sql excel vba

我无法检查从 SQL 导入到 Excel 的值是否为 Null。在调试模式下,我可以看到分配的值为 Null,即不是字符串“Null”。在我的代码示例中尝试过is Nothing,但也尝试过isEmpty= "Null"

下面的代码中的If dbList(2) Is Nothing Then 行,我遇到了问题。

如何检查记录集是否为空?

...
Dim CmdSP As New ADODB.Command
CmdSP.CommandType = adCmdText
CmdSP.CommandText = "SELECT FundName, FundId, SRL.Comment FROM XXX SRL ON XXX = XXX ORDER BY FundName ASC"

CmdSP.ActiveConnection = dbConn

Dim dbList As ADODB.Recordset
Set dbList = CmdSP.Execute

Dim row As Integer
row = 1
While Not dbList.EOF
    DataStorage.Range("dsFundsTopLeft")(row, 2) = dbList(0)
    DataStorage.Range("dsFundsTopLeft")(row, 3) = dbList(1)
    If dbList(2) Is Nothing Then
        DataStorage.Range("dsFundsTopLeft")(row, 4) = "No rating"
    Else
        DataStorage.Range("dsFundsTopLeft")(row, 4) = dbList(2)
    End If
    dbList.MoveNext
    row = row + 1
Wend
...
Run Code Online (Sandbox Code Playgroud)

Fun*_*mas 5

试用功能 isNull

If isNull(dbList(2)) Then
Run Code Online (Sandbox Code Playgroud)