帮助AppActivate找到我的程序

时间:2011-07-18 17:35:50

标签: vba

我构建了一个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

1 个答案:

答案 0 :(得分:0)

也许您可以使用FindWindow命令尝试其他方式(其他一些信息here)。

为了找到哪个类引用您的程序,您可以使用此插件:http://www.xcelfiles.com/API_06.html或受到代码的启发并根据您的需要进行自定义。