从 Word 获取Microsoft所有宏(使用自动化)
Get all macros from Microsoft Word (using automation)
我正在编写一个C++MFC程序,该程序使用其接口自动执行MS Word。
从我的应用程序中,我可以打开MS Word,打开宏窗口,但我需要从组合框中检索所有宏并将它们添加到我的应用程序中,以便以后用户可以选择要应用于某个文档的宏。
可以使用 GetProperty 方法进行检索吗?如果可以,你能给我举个例子吗?
您可以使用 Document.VBProject 访问 VBA 代码(以访问文档中的宏)。以下是使用VBA/C#在word中执行此操作的方法。您可以使用C++重写该代码。
请注意,MFC 不是使用单词自动化的最简单方法,但您也可以使用 MFC 执行此操作。使用 MFC 执行自动化时,有多种方法可用。您可以使用仅 MFC 的方式(即从 90x 开始的样式,使用对象包装器)或使用例如 #import 指令。
GetProperty 基本上是一个通用方法,它可以是获取它所应用到的对象的一些属性,即它不特定于宏。
另请注意,最终用户必须启用"信任对 VBA 项目的编程访问",以允许代码获取宏(这是 word 安全设置中的一个复选框,默认情况下处于关闭状态)。可能是一个表演障碍。
相关文章:
- Qt QML桌面应用程序自动化测试
- 对于单个数据 WORD 的 memcpy 和赋值语句有什么区别?
- 使用 SVM 进行分类,使用来自 Bag of Word 的词汇构建
- 将 64 位指针打包到 4 个 WORD 中
- 在Word中重复段落
- EM_SETSEL在.docx(word文档)中不起作用
- 根据应用程序是否已自动化显示不同的 QML 文件
- 比较 WORD 特征
- COM 自动化结构与它们的包装器
- 将 OLE 自动化日期 (OADate) 双精度转换为结构 tm,而不使用 VariantTime到SystemTime
- 如何结束在 COM 自动化期间执行的进程
- 如何在C++中删除Word文档的写保护
- 如何使用 word 对象模型中的C++接口在 word 中添加自定义 XML 艺术
- C++可以从文本文件复制并粘贴到打开的Word程序中
- 可视化 如何在 C++ 自动化中启动 ms Word 时防止运行自动宏
- 从 Word 获取Microsoft所有宏(使用自动化)
- 如何使用 C++ 自动化将页眉或页脚插入 Word 文档
- 安全地在打开的文档上执行Word自动化
- c++ Word自动化问题导出工作簿中的图表或工作表到图像
- c++ Word自动化中_variant_t范围指针的问题(AddPicture()方法)