VBA中的MS Comm Control

时间:2012-11-22 05:52:18

标签: excel vba excel-vba vb6 serial-port

我正在使用VBA for Excel。我的要求是在VBA中创建的表单应通过我系统的串口与外部系统通信。出于同样的目的,就像我们在VB中一样,我想在VBA中添加MS Comm Control。

我可以通过从Tools -> Additional Controls中选择相同的方式将MS Comm Control添加到控制面板。但是,当我尝试将MSComm控件放在我的表单上时,会出现以下错误。

  

指定的操作不信任主题。

由于这个原因,我无法将控件放在我的表单上,因此无法使用相同的控件。

对于MS Winsock控件,观察到相同的行为。

在stackoverflow上发现了类似的问题:MSCOMM32.ocx usage causes Not Trusted Error没有任何具体的答案。

我的装置是: Win XP - SP3,MS Office 2010,VB6,MS VS 2010。

2 个答案:

答案 0 :(得分:0)

限制了Excel宏(或任何第三方程序或编程语言)中VB6控件的合法使用。唯一的例外是您获得Office Developer Edition许可(或者在较新版本的Office中包含VSTO或同等版本的额外开发人员包),或者您只是创建它们以便在安装了VB6的同一台计算机上使用。

但你的问题可能与微软杀死OCX(阻止在IE中使用,也许在Office中使用?)有关,或者更有可能是你使用的是64位Excel(因而也就是64位VBA)

答案 1 :(得分:0)

我遇到了类似问题,但有MsWinSck.OCX。我通过从http://www.nirsoft.net/utils/acm.html加载ActiveX兼容性管理器来修复它,并通过选择行中的OCX启用OCX(Winsck.OCX),然后单击菜单上的绿色LED。

希望这可能会有所帮助。