【发布时间】:2013-06-19 08:49:46
【问题描述】:
我有一个宏,它可以从 Microsoft Office Outlook(收件箱或任何其他文件夹)中将一些数据提取到 Excel 文件中。要获取 excel 文件,我必须在 Outlook 中手动运行宏。有什么方法可以从 C# 调用宏。我试图在谷歌上搜索,但找不到任何具体的东西。这是即时要求。任何帮助!
【问题讨论】:
我有一个宏,它可以从 Microsoft Office Outlook(收件箱或任何其他文件夹)中将一些数据提取到 Excel 文件中。要获取 excel 文件,我必须在 Outlook 中手动运行宏。有什么方法可以从 C# 调用宏。我试图在谷歌上搜索,但找不到任何具体的东西。这是即时要求。任何帮助!
【问题讨论】:
Look here 这应该可以帮助您入门。
它类似于:
myApp = (Microsoft.Office.Interop.Outlook.ApplicationClass)(Marshal.GetActiveObject("Outlook.Application"));
然后有一个RunMacro(object theApp, object[] theArgs) 方法,然后您将需要在应用程序上调用运行以及此方法中的数据。
【讨论】:
theApp.GetType().InvokeMember("Run", System.Reflection.BindingFlags.InvokeMethod, null, theApp, theArgs); 我在猜测这些事情。虽然没有测试。然后运行:RunMacro(myApp, new Object[] { "macroName" });