0

Vsto-excel项目中,我在特定模块中有一个宏。通过c# 中的代码,我想启动显示给定的 VBA 编辑器。我知道互操作概念,但我坚持启动 vba 编辑器并显示特定的宏。

4

2 回答 2

3

您可以使用Application.Goto "MarcoName"它将在您指定的子/宏处打开 VBE。

于 2012-10-03T10:08:10.967 回答
0

打开的 Excel 工作表上的键盘快捷键 ALT + F11 默认打开 VBA 编辑器。使用 excel 互操作打开 excel 并使 excel 窗口可见。然后您可以将键盘快捷键从您的应用程序传递到 excel 窗口。

如果您在 winform 应用程序上使用它,您可以使用sendkeys方法将键盘快捷键传递给 excel 窗口。 http://msdn.microsoft.com/en-us/library/system.windows.forms.sendkeys.send.aspx

否则使用sendmessage方法传递键盘快捷键。这是关于 sendmessage 用法的帖子,c# 将键盘命令发送到另一个窗口/进程

于 2012-10-03T05:46:59.163 回答