MS通信控制在VBA

我正在使用Excel的VBA。 我的要求是在VBA中创build的表单应该通过我的系统的串口与外部系统进行通信。 为了同样的目的,就像我们在VB中所做的那样,我正努力在VBA中添加MS Comm Control。

我能够通过从Tools -> Additional Controlsselect相同的MS通讯控制添加到控制面板。 但是,当我尝试将MSComm控件放在我的表单上时,它会给我以下错误。

主题不被指定的动作信任。

由于这个原因,我无法将控制权放在我的表格上,因此无法使用。

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

在stackoverflow上find一个类似的问题: MSCOMM32.ocx用法导致不受信任的错误没有任何具体的答案。

我的安装是:Win XP – SP3,MS Office 2010,VB6,MS VS 2010。

在Excelmacros(或任何第三方程序或编程语言)中合法使用VB6控件受到限制。 唯一的例外情况是,当您拥有Office Developer Edition的许可证(或者在Office的较新版本中,包含VSTO的额外开发者软件包或同等版本),或者只是在安装了VB6的同一台计算机上创build它们时才使用。

但是,您的问题可能与微软杀死OCX(防止在IE中使用,也可能在Office中)或者更可能使用64位Excel(以及64位VBA)有关。