Notă: Funcția, metoda, obiectul sau proprietatea descrise în acest subiect este dezactivată dacă Serviciul de expresii Microsoft Jet rulează în modul sandbox, ceea ce împiedică evaluarea expresiilor potențial nesigure. Pentru mai multe informații despre modul sandbox, căutați "modul sandbox" în Ajutor.
Rulează un program executabil și returnează o valoare variant (dublă precizie) reprezentând ID-ul de activitate al programului, dacă are succes, altfel returnează zero.
Sintaxă
Shell( pathname [, windowstyle ] )
Sintaxa funcției Shell are următoarele argumente:
Argument |
Descriere |
Pathname |
Obligatoriu. Variant (Șir). Numele programului de executat și toate argumentele sau argumentele linie de comandă necesare; poate include directorul sau folderul și unitatea. Pe Macintosh, puteți utiliza funcția MacID pentru a specifica semnătura unei aplicații în locul numelui acesteia. Următorul exemplu utilizează semnătura pentru microsoft Word: Shell MacID("MSWD") |
stil fereastră |
Opțional. Variant (Număr întreg) corespunzător stilului ferestrei în care urmează să ruleze programul. Dacă windowstyle este omis, programul este început minimizat cu focalizarea. Pe Macintosh (Sistem 7.0 sau o versiune mai recentă), windowstyle determină doar dacă aplicația primește sau nu focalizarea atunci când rulează. |
Argumentul denumit windowstyle are următoarele valori:
Constantă |
Valoare |
Descriere |
vbHide |
0 |
Fereastra este ascunsă și focalizarea este transferată la fereastra ascunsă. Constanta vbHide nu se aplică pe platformele Macintosh. |
vbNormalFocus |
1 |
Fereastra are focalizarea și este restaurată la dimensiunea și poziția sa inițiale. |
vbMinimizedFocus |
2 |
Fereastra se afișează ca pictogramă focalizată. |
vbMaximizedFocus |
3 |
Fereastra este maximizată cu focalizare. |
vbNormalNoFocus |
4 |
Fereastra este restaurată la cea mai recentă dimensiune și poziție. Fereastra activă în prezent rămâne activă. |
vbMinimizedNoFocus |
6 |
Fereastra se afișează ca pictogramă. Fereastra activă în prezent rămâne activă. |
Observații
Dacă funcția Shell execută cu succes fișierul denumit, returnează ID-ul activității programului pornit. ID-ul activității este un număr unic care identifică programul care rulează. Dacă funcția Shell nu poate porni programul denumit, apare o eroare.
Pe Macintosh, vbNormalFocus, vbMinimizedFocus și vbMaximizedFocus , toate plasează aplicația în prim plan; vbHide, vbNoFocus, vbMinimizeFocus plasează aplicația în fundal.
Notă: În mod implicit, funcția Shell rulează alte programe în mod asincron. Acest lucru înseamnă că este posibil ca un program pornit cu Shell să nu termine executarea înainte de executarea instrucțiunilor care urmează funcției Shell .
Exemplu
Notă: Exemplele care urmează demonstrează utilizarea acestei funcții într-un modul Visual Basic for Applications (VBA). Pentru mai multe informații despre lucrul cu VBA, selectați Referințe pentru dezvoltatori în lista verticală de lângă Căutare și introduceți unul sau mai mulți termeni în caseta de căutare.
Acest exemplu utilizează funcția Shell pentru a rula o aplicație specificată de utilizator. Pe MacIntosh, numele implicit al unității este "HD", iar porțiunile numelui de cale sunt separate prin două puncte în loc de bare oblice inverse. În mod similar, specificați folderele Macintosh în loc de \Windows.
' Specifying 1 as the second argument
' opens the application in normal size and ' gives it the focus. Dim RetVal ' Run Calculator. RetVal = Shell("C:\WINDOWS\CALC.EXE", 1)