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

标签 ms-access ms-access-2007 vba

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

更新:当然,在问完这个问题之后,我想出了一个很好的解决方案。如果我只是在 Excel 中执行 Range("whatever").Value = Range("whatever").Value,那么它将左对齐的 20 更改为右对齐的 20,此时数据透视表将其识别为数字(虽然当我只是在 Excel 中将单元格类型转换为数字时,它在数据透视表中不被识别为数字)。所以,我正在删除背景,因为它没有必要。我仍然很想知道您是否可以为声明为 long 的函数返回某种空白或空值。谢谢

最佳答案

Null只能从 Variant 返回功能。Nothing只能从 Object 返回功能。

所有其他人,您只能返回定义为函数返回值的类型的变量。
如果不设置值,则返回默认值
数值变量初始化为零
可变长度字符串初始化为零长度字符串 ("")
用 ASCII 码 0 填充固定长度的字符串。
日期/时间变量初始化为零

关于ms-access - Access VBA - 为声明为 long 的函数返回某种空白/空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11831973/

相关文章:

asp.net - 将空值插入日期字段?

sql - 访问组中的前 n 个

ms-access - 将 Excel 列表对象导入 Access 表

mysql - 使用 SQL 查询生成多个最大值和最小值

vba - VBA中的列比较错误

vba - 如何使用vba创建二进制序列?

excel - OLEDB 连接到 Access 数据库,密码为 : "Could not find installable ISAM"

excel - 从 Access VBA 退出 Excel session 而不保存

sql - 在 SELECT 查询中使用 SQL 别名语句

sql-server - 如何将数据从 Excel 发送到 SQL 临时表以使用 VBA 进行处理?