Hinweis: Die in diesem Thema beschriebene Funktion, Methode, Objekt oder Eigenschaft ist deaktiviert, wenn der Microsoft Jet-Ausdrucksdienst im Sandboxmodus ausgeführt wird, der die Auswertung potenziell unsicherer Ausdrücke verhindert. Weitere Informationen zum Sandboxmodus finden Sie, wenn Sie in der Hilfe nach "Sandboxmodus" suchen.
Führt ein ausführbares Programm aus und gibt bei erfolgreicher Ausführung einen Wert vom Typ Variant (Double) zurück, der der Task-ID des Programms entspricht. Gibt andernfalls null zurück.
Syntax
Shell ( Pfadname [, Fensterstil ] )
Die Syntax der Shell-Funktion weist die folgenden Argumente auf:
Argument |
Beschreibung |
Pfadname |
Erforderlich. Variant (String). Name des auszuführenden Programms und alle erforderlichen Argumente oder Befehlszeile Schalter; kann Verzeichnis oder Ordner und Laufwerk enthalten. Auf dem Macintosh können Sie die MacID-Funktion verwenden, um die Signatur einer Anwendung anstelle des Namens anzugeben. Im folgenden Beispiel wird die Signatur für Microsoft Word verwendet: Shell MacID("MSWD") |
Fensterstil |
Optional. Variant (Integer) entsprechend dem Stil des Fensters, in dem das Programm ausgeführt werden soll. Ist Fensterstil nicht angegeben, wird das Programm minimiert mit Fokus gestartet. Auf einem Macintosh (System 7.0 oder höher) bestimmt Fensterstil nur, ob die Anwendung den Fokus erhält oder nicht, wenn sie ausgeführt wird. |
Das Argument Fensterstil hat die folgenden Werte:
Konstante |
Wert |
Beschreibung |
vbHide |
0 |
Das Fenster wird ausgeblendet, und der Fokus wird an das ausgeblendete Fenster übergeben. Die vbHide-Konstante gilt nicht für Macintosh-Plattformen. |
vbNormalFocus |
1 |
Das Fenster hat den Fokus und wird in seiner ursprüngliche Größe an seiner ursprünglichen Position wiederhergestellt. |
vbMinimizedFocus |
2 |
Das Fenster wird als Symbol mit Fokus angezeigt. |
vbMaximizedFocus |
3 |
Das Fenster wird mit Fokus maximiert. |
vbNormalNoFocus |
4 |
Das Fenster wird in seiner letzten Größe an seiner letzten Position wiederhergestellt. Die derzeit aktive Fenster bleibt aktiv. |
vbMinimizedNoFocus |
6 |
Das Fenster wird als Symbol angezeigt. Die derzeit aktive Fenster bleibt aktiv. |
Hinweise
Kann die Shell-Funktion die benannte Datei erfolgreich ausführen, gibt sie die Task-ID des gestarteten Programms zurück. Die Task-ID ist eine eindeutige Nummer, die das aktive Programm kennzeichnet. Kann die Shell-Funktion das benannte Programm nicht starten, tritt ein Fehler auf.
Auf einem Macintosh-Computer bewirken vbNormalFocus, vbMinimizedFocus und bMaximizedFocus, dass die Anwendung im Vordergrund angeordnet wird. vbHide, vbNoFocus und vbMinimizeFocus bewirken, dass die Anwendung im Hintergrund angeordnet wird.
Hinweis: Standardmäßig führt die Shell-Funktion andere Programme asynchron aus. Dies bedeutet, dass ein Programm, das mit Shell gestartet wurde, möglicherweise weiter ausgeführt wird, wenn die Anweisungen ausgeführt werden, die auf die Shell-Funktion folgen.
Beispiel
Hinweis: Die folgenden Beispiele zeigen die Verwendung dieser Funktion in einem VBA-Modul (Visual Basic for Applications). Wenn Sie weitere Informationen zum Arbeiten mit VBA wünschen, wählen Sie Entwicklerreferenz in der Dropdownliste neben Suchen aus, und geben Sie einen oder mehrere Begriffe in das Suchfeld ein.
In diesem Beispiel wird die Shell-Funktion verwendet, um eine vom Benutzer angegebene Anwendung zu starten. Auf einem Macintosh-Computer ist "HD" der Standardlaufwerkname, und Teile des Pfadnamens werden durch Doppelpunkte anstatt durch umgekehrte Schrägstriche voneinander getrennt. Entsprechend müssen Sie Macintosh-Ordner anstelle von "\Windows" angeben.
' 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)