2009-12-29 120 views

回答

1

VBScript和Windows腳本宿主只支持原始的GUI自動化,如激活窗口(在AppActivate法)和發送鍵擊(在SendKeys方法)。所以我懷疑你的任務可以用純VBScript來完成。

但是,有一個名爲AutoIt的免費GUI自動化工具應該能夠滿足您的需求。

0

根據應用程序的不同,對象模型可用於自動化大多數功能。我經常使用Excel對象模型自動化Excel。下面是在MSDN的文檔的鏈接:

http://msdn.microsoft.com/en-us/library/aa209782%28office.10%29.aspx

我平時關閉彈出菜單時,可以防止它們引起的腳本來處理突發事件。這裏是一個例子:

'Create an new instance of Excel to work with 
Set objExcel = CreateObject("Excel.Application") 
Set objBook = objExcel.Workbooks.Open("C:\Test.xls") 
Set objSheet = objStartsBook.Sheets(1) 
'Make Excel visible on the screen for the user 
objExcel.Visible = True 
'Turn off pop up dialog boxes from excel so the script can control the app 
objExcel.DisplayAlerts = False 

從這裏,我會繼續使用Excel的對象模型來讓應用程序執行我需要的任何任務。

訣竅在於想要完成所需任務的成員和方法,以及與人員如何與GUI進行交互。

0

如果你想要的是關閉一個彈出,這可能會幫助您:

Set oShell = CreateObject("WScript.Shell") 

Do 
    bResult = oShell.AppActivate("Title of the dialog box") 
    If bResult = True Then 
     oShell.SendKeys "%N" ' Alt+N, you may send {Esc} or {Enter} if you want 
     Exit Do 
    End If 
    WScript.Sleep 500 
Loop 
0
Set oShell = CreateObject("WScript.Shell") 

Do 
    bResult = oShell.AppActivate("Title of the dialog box") 
    If bResult = True Then 
     oShell.SendKeys "%N" ' Alt+N, you may send {Esc} or {Enter} if you want 
     Exit Do 
    End If 
    WScript.Sleep 500 
Loop