从Microsoft Word获取所有宏(使用自动化)

时间:2013-11-08 13:51:24

标签: c++ macros mfc ms-word ms-office

我正在编写一个C ++ MFC程序,它使用interfaces自动化MS Word。

从我的应用程序中我可以打开MS Word,打开宏窗口,但我需要从组合框中检索所有宏并将它们添加到我的应用程序中,因此稍后用户可以选择他想要应用于某个文档的宏。

可以使用GetProperty方法进行检索吗?如果可以,你可以给我看一个例子吗?

1 个答案:

答案 0 :(得分:2)

您可以使用Document.VBProject来访问VBA代码(以获取文档中的宏)。 Here是如何使用VBA / C#在单词中完成的。您可以使用C ++重写该代码。

请注意,MFC不是使用文字自动化的最简单方法,但您也可以使用MFC。使用MFC进行自动化时,可以使用多种方法。你可以用MFC-only-way(即从90x的样式,使用对象包装器),或使用例如#import指令。

GetProperty基本上是一种通用方法,可以获取应用它的对象的某些属性,即它不是特定于宏。

另请注意,最终用户必须启用“信任编程访问VBA项目”才能使代码获取宏(这是单词安全设置中的复选框,默认情况下处于关闭状态)。可能是一个表演者。