在工作中,我们有一个带有一些功能区按钮的加载项供我们使用。加载项受密码保护,我们甚至无法看到这些功能区按钮正在调用的内容。因此,我知道在加载项中看不到任何子例程或宏的任何名称。
我想知道是否有可能编写一些可以模仿按钮点击的内容?我需要能够与这些按钮交互的东西。我希望这是可能的,因为稍后我也想编写一些可以点击网页上的链接和其他程序上的按钮的内容。
贺
答案 0 :(得分:1)
您可以尝试使用十六进制编辑器将pass替换为addin(如果此插件是使用excel创建的,但看起来像是这样),因此您只需要十六进制编辑器(例如Xvi32)。
好的,让我们试试吧:
干杯(:
答案 1 :(得分:0)
要使用网页,您应该使用Selenium。
模拟鼠标点击永远不是一个好方法。如果界面发生变化,或者您尝试在具有不同分辨率的不同屏幕上使用它,那么一切都不像以前那样会怎么样?
无论如何,你可以使用VBA发送鼠标点击:
Public Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long
Public Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)
Public Const MOUSEEVENTF_LEFTDOWN = &H2
Public Const MOUSEEVENTF_LEFTUP = &H4
Public Const MOUSEEVENTF_RIGHTDOWN As Long = &H8
Public Const MOUSEEVENTF_RIGHTUP As Long = &H10
Private Sub SingleClick()
SetCursorPos 100, 100 'x and y position
mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
End Sub
或者您可以使用AutoIt等外部程序。
但与插件的autohours交谈会更好,并要求可编程接口。那将更加强大。