使用Jacob桥(COM / ActiveX)传递枚举值

时间:2011-06-07 00:51:44

标签: java com activex jacob

有没有人知道是否有办法使用Jacob传递枚举值?

ComObj.ComEnum.enumVal1
ComObj.ComEnum.enumVal2

我想将enumVal1enumVal2作为Variant传递。

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

2 个答案:

答案 0 :(得分:0)

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

enter image description here

答案 1 :(得分:0)

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

I found a post on the subject表示the values ... correspond to internally stored numbersAn enumeration in VBA is always of data type Long

因此,使用此信息和值,只需将Variant的值作为long传递即可。例如:

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

我确定有办法实现"枚举"数据结构,但这对我来说已经足够了。