【问题标题】:How to action an event in Word from another .NET application using VSTO如何使用 VSTO 从另一个 .NET 应用程序处理 Word 中的事件
【发布时间】:2015-04-10 16:05:08
【问题描述】:

我正在处理一个项目,该项目涉及将启用 VBA 宏的 Word 文档迁移到 VSTO 文档级自定义。我们有一个 .NET 应用程序,它目前能够使用 Word 互操作操作 Word VBA 宏。

下面是我们的 .NET 应用程序中的示例代码行,用于在启用宏的文档中调用宏 SomeMethod:

Word.Application.Application.Run(MacroName:="MyDoc.Module1.SomeMethod")

有没有一种方法可以通过 VSTO 文档级自定义来复制它?

【问题讨论】:

    标签: .net vba vsto ms-word


    【解决方案1】:

    当然,您可以直接拨打MyDoc.Module1.SomeMethod

    【讨论】:

      【解决方案2】:

      我没有足够的代表发表评论,但这是重复的: Call VBA AddIn macro from VSTO PowerPoint Ribbon

      我还可以确认我已经在我的应用程序中成功使用了这个确切的代码。

      private void RunMacro(object oApp, object[] oRunArgs)
      {
         oApp.GetType().InvokeMember("Run",
         System.Reflection.BindingFlags.Default |
         System.Reflection.BindingFlags.InvokeMethod,
         null, oApp, oRunArgs);
      }
      

      这样称呼:

      Globals.ThisAddIn.RunMacro(Globals.ThisAddIn.Application , new object[] {"VBA macro name"});
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多