我构建了一个VBA脚本,用于激活我公司的企业数据库软件,并获取错误消息的屏幕截图以进行编译,并在弹出时将它们发送给我们的IT部门。
问题是它有大约30%的机会找不到数据库程序。
我正在使用AppActivate,并让它重复命令,并在名称上添加不同的变体。 (当我的AppActivate在60-70%的时间内丢失时,我从其他地方借了这大块代码。)
“PROGname v2 - [菜单用户标题打开]”是程序的菜单栏名称。我每次都能抓到它吗?
Sub ActivateWin()
'Activates The Program by window name
On Error Resume Next 'we ignore all errors until we reach last AppActivate
AppActivate ("PROG")
If Err.Number = 5 Then Err = 0: AppActivate ("PROGname v2")
If Err.Number = 5 Then Err = 0: AppActivate ("PRO")
If Err.Number = 5 Then Err = 0: AppActivate ("P")
If Err.Number = 5 Then Err = 0: AppActivate ("prog")
If Err.Number = 5 Then Err = 0: MsgBox "PROGname not found. Please go yell at MYNAME!"
End Sub
答案 0 :(得分:0)
也许您可以使用FindWindow
命令尝试其他方式(其他一些信息here)。
为了找到哪个类引用您的程序,您可以使用此插件:http://www.xcelfiles.com/API_06.html或受到代码的启发并根据您的需要进行自定义。