Shell 函式
R執行一個執行檔程式,如果成功的話,會傳回一個 Variant (Double) 來代表這個程式的 task ID,若不成功,則會傳回 o。 語法
Shell(pathname[,windowstyle])
Shell 函式的語法含有底下這些指名引數:
單元
描述
pathname 必要引數,Variant (String),要執行的程式名稱,以及任何必要的引數或命令列變數,同可時加上目錄或檔案夾名稱,以及磁碟機名稱。
Windowstyle 選擇性引數,此為 Variant (Integer),表示在程式執行時,視窗的呈現型態,如果windowstyle 省略,則程式是以最小化來執行。
windowstyle 指名引數有以下這些值:
常數
值
vbHide 0 視窗會被隱藏,且駐點會移到隱藏的視窗。
VbNormalFocus 1 視窗具有駐點,且會還原到它原來的大小和位置。
VbMinimizedFocus 2 視窗會以一個圖示來顯示,並具有駐點。
VbMaximizedFocus 3 視窗會最大化,並具有駐點。
VbNormalNoFocus 4 視窗會被還原到前一次的大小和位置,而目前使用中的視窗仍然維持使用中。
VbMinimizedNoFocus 6 視窗會以一個圖示來顯示,而目前使用中的視窗仍然維持使用中。
請注意
如果 Shell 函式可以成功地執行所要的執行檔,則它會傳回啟始程式的 task ID , task ID 是一個唯一的數值,用來指名執行中的程式,如果 Shell 函式無法開啟指名的程式,則會產生錯誤
附註 預設情況為 Shell 函式是以非同時方式來執行其它程式,也就是說,用 Shell 所啟動的程式,可能還沒執行完全,就執行到 Shell 函式之後的陳述式。
參考之後的程式碼是這樣寫的,
Sub MacroUpdate()
On Error GoTo ErrorHandler
ID = Shell(ThisWorkbook.Path & "\" & "LiveUpdate.exe", 4)
Exit Sub
ErrorHandler:
MsgBox Err.Description, vbInformation, MacroTitle
End Sub
Shell 函式
R執行一個執行檔程式,如果成功的話,會傳回一個 Variant (Double) 來代表這個程式的 task ID,若不成功,則會傳回 o。 語法
Shell(pathname[,windowstyle])
Shell 函式的語法含有底下這些指名引數:
單元
描述
pathname 必要引數,Variant (String),要執行的程式名稱,以及任何必要的引數或命令列變數,同可時加上目錄或檔案夾名稱,以及磁碟機名稱。
Windowstyle 選擇性引數,此為 Variant (Integer),表示在程式執行時,視窗的呈現型態,如果windowstyle 省略,則程式是以最小化來執行。
windowstyle 指名引數有以下這些值:
常數
值
描述
vbHide 0 視窗會被隱藏,且駐點會移到隱藏的視窗。
VbNormalFocus 1 視窗具有駐點,且會還原到它原來的大小和位置。
VbMinimizedFocus 2 視窗會以一個圖示來顯示,並具有駐點。
VbMaximizedFocus 3 視窗會最大化,並具有駐點。
VbNormalNoFocus 4 視窗會被還原到前一次的大小和位置,而目前使用中的視窗仍然維持使用中。
VbMinimizedNoFocus 6 視窗會以一個圖示來顯示,而目前使用中的視窗仍然維持使用中。
請注意
如果 Shell 函式可以成功地執行所要的執行檔,則它會傳回啟始程式的 task ID , task ID 是一個唯一的數值,用來指名執行中的程式,如果 Shell 函式無法開啟指名的程式,則會產生錯誤
附註 預設情況為 Shell 函式是以非同時方式來執行其它程式,也就是說,用 Shell 所啟動的程式,可能還沒執行完全,就執行到 Shell 函式之後的陳述式。
參考之後的程式碼是這樣寫的,
Sub MacroUpdate()
On Error GoTo ErrorHandler
ID = Shell(ThisWorkbook.Path & "\" & "LiveUpdate.exe", 4)
Exit Sub
ErrorHandler:
MsgBox Err.Description, vbInformation, MacroTitle
End Sub