vba - 如何调用预装的 COMADDin?
问题描述
我在 Outlook 中编写了宏,以在将邮件放入文件夹时自动调用预安装的 comaddin“报告为垃圾邮件”。但是,我无法从宏运行该加载项。
Dim addin As COMAddIn
Dim adxModule As Object
Set addin = Application.COMAddIns.Item("Report as Spam")
Set adxModule = addin.Object
Call adxModule
结果应该运行报告为垃圾邮件,这将弹出一条消息以单击发送或取消。
解决方案
只有当其他插件想要通过公开COMAddin.Object
属性来调用时,您才能执行此操作(您确定adxModule
代码 abobe 中的变量不是 Nothing?)。
如果是这种情况,语法将是adxModule.SomeMemberName argumentsList
. 您上面的代码调用了一个对象,除非该对象具有默认成员,否则该对象无效- 您需要调用该对象的成员。查看对象浏览器(F2) 以查看加载项是否公开了您可以通过这种方式调用的任何过程。
如果加载项的设计目的不是让成员暴露于 VBA 代码,那么它可能不会暴露任何此类成员。
推荐阅读
- javascript - 文件数据在 textarea 中不可见,但可以使用 getElementsByClassName 在 console.log 中看到
- javascript - 如何从 js 或 jquery 中的 jsons 数组中的数组中提取特定值?
- typescript - 打字稿通用方法
- python - 如何在c中调用静态pyobject类型的c函数
- json - 如何解析包含键值对的 JSONObject?
- python - 控制台警告文件
- javascript - 无法使用 pdfkit 和 node.js 将图像从 firebase 写入 pdf
- c# - 进程无法访问文件,因为它被另一个进程使用
- html - 语义旁注的 HTML 元素是什么?
- laravel - Laravel 设计模式