如何从后面的代码中点击Excelfunction区button

我们使用第三方Excel插件来填充Excel工作表中的数据。 我已经被赋予编写C#应用程序(WinForms或VSTO)的任务,该应用程序将自动单击function区button并处理数据。

问题是我找不到任何方法使用C#代码自动点击function区button(在加载项选项卡上)。

我也尝试使用Win32 API将按键发送到父Excel窗口(使用SendMessage),但没有收到按键。 (我使用Spy ++进行检查)。 并查看了附加组件中公开的公共方法,但没有包含任何公共方法来执行与单击function区button相同的方法。

有谁知道我可以如何使用C#代码在Excel(加载项)function区中单击function区button?

查看Excel应用程序类的SendKeys方法。 它允许您将密钥直接发送到Excel。 您可以按Alt键查看哪些快捷键分配给了哪些button/function区选项卡。 我使用这个自动化一些testing,它工作正常。

如果你需要更复杂的东西,你也可以看看Sikuli 。 它基于图像识别,并使用Java.Robots类来发送按键和点击。 自动执行UI任务非常简单。