1.啟動(dòng)應(yīng)用程序的概念
?本身在window里面啟動(dòng)一個(gè)應(yīng)用程序的方法不止一個(gè)版姑,至少可以使用五種方法手動(dòng)打開某個(gè)程序:
? ? ?通過“開始”|“程序”菜單快捷鍵 ?,“運(yùn)行“命令 能扒,也就是MS-DOS窗口執(zhí)行打開命令,或者在視窗瀏覽器里雙擊可執(zhí)行文件筷笨。
? 在VBA里 用 Shell函數(shù) 實(shí)現(xiàn) 打開其他應(yīng)用程序憔鬼。
下面代碼 為 打開 記事本(覺得麻煩就在立即窗口中運(yùn)行)
Shell”notepad.exe“,vbMaximizeFocus
上面語句中 ”notepad.exe" 是 要打開的程序的名稱, ?這里可以加上路徑 方便系統(tǒng)可以找到
? ? 第二個(gè)參數(shù)是 可選參數(shù) ?見下表
?這些參數(shù)不需要記住胃夏,可以,出來(點(diǎn)出來) ?但是技術(shù)vbHide ?應(yīng)該有好處
? ?如果 Shell函數(shù)能夠啟動(dòng)某個(gè)可執(zhí)行文件轴或,那么他就會(huì)返回一個(gè)叫做任務(wù)ID的號(hào)碼,該號(hào)碼是指應(yīng)用程序啟動(dòng)的未用號(hào)碼仰禀,如果Shell函數(shù)啟動(dòng)程序失敗的話照雁,VB就會(huì)產(chǎn)生一個(gè)錯(cuò)誤。
? 在應(yīng)用程序之間切換
假設(shè)除了Excel之外答恶,你還打開了其他另外兩個(gè)程序:Word和Explorer饺蚊。你可以按照下面的語使用AppActivate語句來激活已經(jīng)打開的程序:
AppActivate title[,wait]
其中 ?標(biāo)題參數(shù)是必須的,=應(yīng)用程序的名稱或者他也可以是Shell函數(shù)返回的任務(wù)ID號(hào)碼
? 標(biāo)題參數(shù)一定要對(duì)應(yīng)一致悬嗓,否則會(huì)模糊查找 比如你要激活Excel,那么title參數(shù)應(yīng)該是”Microsoft Excel“,如果你寫的是”Microsoft”污呼,那么激活的可能是Word。包竹。燕酷。。周瞎。
?第二個(gè)參數(shù)是布爾型苗缩,, ?
控制其他應(yīng)用程序
要控制一個(gè)應(yīng)用程序的最簡單的方式就是使用SendKeys語句
格式如下
SendKeys string[,wait]
參數(shù)string 是要發(fā)送到活動(dòng)應(yīng)用程序的窗口的鍵或組合鍵
SendKeys “f“
SendKeys”%f“
但是有些按鍵 ? + ^ ~ () ? ?這些字符要發(fā)送到程序和話 要用{} 括起來声诸。