如何从代码后面单击Excel功能区按钮

时间:2014-07-17 15:09:00

标签: c# excel vsto

我们使用第三方Excel Addin填充Excel工作表中的数据。我已经完成了编写C#应用程序(WinForms或VSTO)的任务,它将自动单击功能区按钮并处理数据。

问题是我无法使用C#代码自动点击功能区按钮(在加载项选项卡上)。

我也尝试过使用Win32 API将按键发送到父Excel窗口(使用SendMessage),但是没有收到按键。 (我使用Spy ++检查过)。 并查看了外接程序集中公开的公共方法,但它没有包含任何公共方法来执行与单击功能区按钮相同的操作。

有谁知道如何使用C#代码单击Excel(加载项)功能区中的功能区按钮?

1 个答案:

答案 0 :(得分:2)

查看Excel Application类的SendKeys方法。它允许您将密钥直接发送到Excel。您可以按Alt键查看哪些快捷方式分配给哪些按钮/功能区选项卡。我用这个自动化了一些测试,它运行良好。

如果您需要更复杂的事情,您还可以查看Sikuli。它基于图像识别,并使用Java.Robots类发送按键和点击。使用它可以轻松实现UI任务的自动化。