将对象引用分配给 Variant/Long

Assigning object reference to a Variant/Long

我有时会遇到这样的错误:"Required object"(翻译自我的法语错误。)

但我无法理解 VBA 中的对象到底是什么(使用 Access,如果它改变了什么)。

例如,我用 ADODB.recordset 做了一个 SQL SELECT,我在 VBA 的 Access IDE 的间谍中看到,值为 "Variant/Long"。好的,我创建了一个 Long 变量,并在 long 变量中设置了查询的值。 Set userId = RS.Fields(0).value 但它不起作用...

一开始我的想法是:对象就像一个数组。但是数组已经存在于 VBA.

有人可以帮助我吗?

Long 数据类型可以容纳 32 位整数。它不是对象引用,所以不要使用 Set

Dim userId As Long
userId = RS.Fields(0).value

有关什么是对象和什么不是对象的更多信息,请参阅 Data Type Summary for VBA