VBA IsNull处理

时间:2015-11-27 20:02:21

标签: vba

您好我是vba的新手,在这里我想在Excel工作表上打印记录。

这是我的代码:

While Not ActualList.EOF
    Actual = ActualList("Actual")
    If IsNull(Actual) Then
        ActiveCell.Value = "0.00"
        ActiveCell.Offset(1, 0).Select
    Else
        Debug.Print Actual
        ActiveCell.Value = Actual
        ActiveCell.Offset(1, 0).Select
    End If
    ActualList.MoveNext
Wend

ActualList记录集有4个项目,包含空值。

更确切地说,它具有以下项目:5960,NULL,NULL,NULL

我需要打印这些值,但我得到的是0,0,0,0

请帮忙

1 个答案:

答案 0 :(得分:0)

在VBA中,有几种不同类型的东西。

  • 空 - IsEmpty(v) - VT_EMPTY
  • 无效 - IsNull(v) - VT_NULL
  • 没有 - v Is Nothing - VT_UNKNOWNVT_DISPATCH
  • 缺少 - IsMissing(v) - VT_ERROR,其中包含特定错误代码
  • 空字符串
  • 空字符串
  • 各种零。 (单,双,短,长,字节,十进制,货币等)

你所拥有的是一个字符串"NULL"

你应该做的是在该行上设置一个断点并检查变量值。