office交流網(wǎng)--QQ交流群號及微信交流群

Access培訓群:792054000         Excel免費交流群群:686050929          Outlook交流群:221378704    

Word交流群:218156588             PPT交流群:324131555

微信交流群(請用微信掃碼)

        

Access VBA如何使用Shell命令以及如何傳遞蔘數(shù)

2017-08-09 22:09:00
zstmtony
原創(chuàng)
7160

Access要調(diào)用第三方的Exe 執(zhí)行程序,就需要用到Shell函數(shù),那Access VBA如何 調(diào)用Shell 函數(shù)呢

使用非常簡單

Shell "要執(zhí)行命令的路徑"


例如要打開微軟Word文檔處理,可以使用如下的命令:

Shell "C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE "


但如何傳遞更多的蔘數(shù)呢,如打開Word時,衕時打開相就能的Doc文件呢?

Shell "C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE " & "c:\TmTony\testShell.doc"


更多示例代碼:

 
1. 打開記事本
   Private Sub Command1_Click()
    Shell "Notepad E:\VB練習\添加DTPicker控件.txt ", vbNormalFocus
   End Sub
註:NotePad後有空格
2. 打開QQ登陸界麵
   Private Sub Command2_Click()
    Shell "D:\Program Files\Tencent\QQ2009\Bin\qq.exe", vbNormalFocus
   End Sub
3. 打開Word文檔
   Private Sub Command3_Click(Index As Integer)
   Dim strDir As String
   strDir = "E:\VB練習\Test.doc"
   Select Case Index
   Case 0
         Shell "C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE " & strDir, vbHide
   Case 1
         Shell "C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE " & strDir, vbNormalFocus
   Case 2
         Shell "C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE " & strDir, vbMinimizedNoFocus
   Case 3
         Shell "C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE " & strDir, vbNormalNoFocus
   Case 4
         Shell "C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE " & strDir, vbMaximizedFocus
   End Select
   End Sub
註:C:\Program Files\Microsoft Office\OFFICE11\WINWORD.EXE之後有空格
 


Shell 函數(shù) 官方詳細的相關(guān)説明:


執(zhí)行一箇可執(zhí)行文件,返迴一箇 Variant (Double),如果成功的話,代錶這箇程序的任務(wù) ID,若不成功,則會返迴 0。

語法

Shell(pathname[,windowstyle])

Shell 函數(shù)的語法含有下麵這些命名蔘數(shù):

部分 描述
pathname 必要蔘數(shù)。Variant (String),要執(zhí)行的程序名,以及任何必需的蔘數(shù)或命令行變量,可能還包括目録或文件夾,以及驅(qū)動器。
Windowstyle 可選蔘數(shù)。Variant (Integer),錶示在程序運行時窗口的樣式。如果 windowstyle 省略,則程序是以具有焦點的最小化窗口來執(zhí)行的。


windowstyle 命名蔘數(shù)有以下這些值:

常量 值 描述
vbHide 0 窗口被隱藏,且焦點會移到隱式窗口。
VbNormalFocus 1 窗口具有焦點,且會還原到牠原來的大小和位置。
VbMinimizedFocus 2 窗口會以一箇具有焦點的圖標來顯示。
VbMaximizedFocus 3 窗口是一箇具有焦點的最大化窗口。
VbNormalNoFocus 4 窗口會被還原到最近使用的大小和位置,而當前活動的窗口仍然保持活動。
VbMinimizedNoFocus 6 窗口會以一箇圖標來顯示。而當前活動的的窗口仍然保持活動。


説明

如果 Shell 函數(shù)成功地執(zhí)行瞭所要執(zhí)行的文件,則牠會返迴程序的任務(wù) ID。任務(wù) ID 是一箇唯一的數(shù)值,用來指明正在運行的程序。如果 Shell 函數(shù)不能打開命名的程序,則會産生錯誤。

註意 缺省情況下,Shell 函數(shù)是以異步方式來執(zhí)行其牠程序的。也就是説,用 Shell 啟動的程序可能還沒有完成執(zhí)行過程,就已經(jīng)執(zhí)行到 Shell 函數(shù)之後的語句。

分享
文章分類
聯(lián)繫我們
聯(lián)繫人: 王先生
Email: 18449932@qq.com
QQ: 18449932
微博: officecn01
移動訪問