4

Does anyone know if there's a way to pass an enumeration value using Jacob?

ComObj.ComEnum.enumVal1
ComObj.ComEnum.enumVal2

I'd like to pass enumVal1 or enumVal2 as a Variant.

o.invoke("Action",new Variant("enumVal1"));   \\just pseudo code
4

2 回答 2

0

枚举值在宏编辑器的对象浏览器中可用。

在此处输入图像描述

于 2013-08-26T10:32:04.060 回答
0

OP 似乎在询问如何进行实际调用......其中获取基础值(如@ChadiEM 所示)是其中的一部分。

我找到了一篇关于这个主题的帖子,上面写着the values ... correspond to internally stored numbersand An enumeration in VBA is always of data type Long

因此,有了这些 info 和 values ,只需将 aVariant的值作为 a传递即可long。例如:

o.invoke("Action",new Variant(34L));

我确信有一种方法可以获得实际的“枚举”数据结构,但这对我来说已经足够了。

于 2016-03-11T15:32:34.587 回答