VBA与active-x引用有关

时间:2016-01-29 09:06:19

标签: excel vba printing reference controls

我想为打印机编程控件。打印机的界面是" Legitronic"来自" Weber Packaging Solutions"的软件。在vba-activex手册中,编写了一个实例构建如下:

用于后期绑定:

Dim MyLabel as Object
Set MyLabel = CreateObject("Legi32.label")

早期绑定:

Dim MyLabel as Legi32.label
Set MyLabel = CreateObject("Legi32.label")

我提到了界面的类型库(我的同事告诉我这是正确的参考,因为他过去也做了一个程序而且对他有用)

但是每次执行程序时都会遇到运行时错误'''             

我使用带有宏(.xlsm)的Microsoft Excel工作表的IDE

你知道这个问题还是知道怎么解决?

提前致谢!

1 个答案:

答案 0 :(得分:1)

我同意flohdieter的早期约束。

早期绑定。 尝试设置对您尝试使用的组件的引用(Legi32)。 如果无法为对象分配引用,则可能必须使用RegSvr32 ./somefile在系统上注册它。你的同事可能会在他的手表上注册。但你还没有。 设置引用后,您应该能够编译代码并成功使用New - 除非组件存在其他问题。

后期绑定。 这是您使用CreateObject(“SomeName”)的地方。 创建组件时,为其分配一个存储在注册表中的Id。由于版本不同,此ID可能会发生变化。您可能安装了不同的版本,并且正在寻找错误的名称。 我建议你做的是打开注册表并搜索“Legi32”并查看Id在名称的末尾是否有1或其他任何内容。