Deklariert den Namen, die Argumente und den Code, die den Hauptteil einer Sub-Prozedur bilden.
Syntax
Sub name [(arglist)] [statements] [Exit Sub] [statements] End Sub
Name: Name der Sub-Prozedur. Er folgt den Standardkonventionen zur Benennung von Variablen.
Arglist: Liste der Variablen, die Argumente darstellen, die beim Aufruf an die Sub-Prozedur übergeben werden. Mehrere Variablen werden durch Kommas getrennt.
Statements: Jede Gruppe von Anweisungen, die im Hauptteil der Sub-Prozedur ausgeführt werden sollen.
Argumente:
Das Argument "arglist" weist folgende Syntax und Teile auf:
[ByVal | ByRef] varname[( )]
ByVal: Gibt an, dass das Argument als Wert übergeben wird.
ByRef: Gibt an, dass das Argument als Verweis übergeben wird.
Varname: Name der Variablen, die das Argument darstellt. Er folgt den Standardkonventionen zur Benennung von Variablen.
Anmerkungen
Wenn Sub-Prozeduren nicht explizit mit Public oder Private angegeben werden, sind sie standardmäßig öffentlich, d.h. für alle anderen Prozeduren in Ihrem Skript sichtbar. Der Wert lokaler Variablen in einer Sub-Prozedur wird zwischen Aufrufen der Prozedur nicht beibehalten.
Die "Exit Sub"-Anweisung bewirkt, dass eine Sub-Prozedur sofort beendet wird. Die Programmausführung wird mit der Anweisung fortgesetzt, die auf die Anweisung folgt, die die Sub-Prozedur aufgerufen hat. Eine beliebige Anzahl von "Exit Sub"-Anweisungen kann überall in einer Sub-Prozedur vorkommen.
Wie eine Function-Prozedur ist eine Sub-Prozedur eine separate Prozedur, die Argumente annehmen, eine Reihe von Anweisungen ausführen und den Wert ihrer Argumente ändern kann. Im Gegensatz zu einer Function-Prozedur, die einen Wert zurückgibt, kann eine Sub-Prozedur jedoch nicht in einem Ausdruck verwendet werden.
Sie rufen eine Sub-Prozedur mit dem Prozedurnamen gefolgt von der Argumentliste auf. Weitere Informationen zum Aufrufen von Sub-Prozeduren finden Sie in der Call-Anweisung.
Beispiel 1:
Sub mysub() 'some statements End Sub
Beispiel 2:
Sub mysub(argument1, argument2) 'some statements End Sub