代码之家  ›  专栏  ›  技术社区  ›  GeoffDS

Access VBA-为声明为long的函数返回某种空白/null

  •  4
  • GeoffDS  · 技术社区  · 12 年前

    问题: 我想在Access中使用一个声明为Long类型的VBA函数。有些时候我想返回一个0到35之间的整数,但大多数时候我也希望能够返回一个空白或null或类似的东西。有办法做到这一点吗?我所尝试的(variable=“”或Set variable=Nothing)只是调用了一个错误。这将在查询中使用,并将给出一列的值。我希望该列为Long类型。如果这样的事情不可能发生,我想这就是我所需要知道的,因为我已经有了一个不同但不太理想的解决方案。谢谢你的帮助。

    更新: 当然,在问了这个问题之后,我就想出了一个很好的解决方案。如果我只是在Excel中执行Range(“whatever”).Value=Range(“whatever”。因此,我删除背景是因为没有必要。我仍然很想知道是否可以为声明为long的函数返回某种类型的空白或null。谢谢

    2 回复  |  直到 12 年前
        1
  •  7
  •   SeanC    12 年前

    Null 只能从 Variant 作用
    Nothing 只能从 Object 作用

    除此之外,您只能返回定义为函数返回值的类型的变量。
    如果未设置值,则返回默认值
    数值变量初始化为零
    可变长度字符串初始化为零长度字符串(“”)
    固定长度的字符串将填充ASCII代码0。
    日期/时间变量初始化为零

        2
  •  2
  •   Doug Glancy    12 年前

    由于单元化的long的值为0,因此答案为“否”。声明为long的函数不能返回null或空白。如果零不是函数的有效返回值,则可以将其用作“null”等效值,但您已经知道:)