Sub-Prozeduren

Um mehrere Befehle hintereinander „am Stück“ auszuführen, werden sie in sogenannten Prozeduren zusammengefasst. Eine Prozedur kann beliebig viel Code enthalten. Der Aufruf des gesamten darin enthaltenen Codes erfolgt einfach, indem man den Namen der Prozedur verwendet. Später werden wir uns noch eingehend mit Prozeduren beschäftigen. Für den Anfang benötigen wir nur sehr einfache Prozeduren, nämlich eine sogenannte „Sub“. Dafür schreiben wir in unser soeben erstelltes Modul folgenden Text:

Sub Hallo()
    Debug.Print "Hallo Welt!"
End Sub

Es reicht schon, sub Hallo zu schreiben. Damit haben wir eine neue Prozedur namens Hallo erstellt. Nachdem wir Enter gedrückt haben, schreibt der VBA-Editor (wieder dank IntelliSense) automatisch Sub groß und fügt Klammern sowie End Sub hinzu. Außerdem werden bestimmte Teile des Codes farbig dargestellt, was die Orientierung etwas vereinfacht.

Solange sich der Cursor innerhalb einer Prozedur befindet, steht im Kombifeld oben rechts im Modulfenster der Name der Prozedur. Gibt es mehrere Prozeduren in einem Modul, kann man mit Hilfe dieses Kombifelds leicht zwischen ihnen navigieren. Außerdem gibt es in diesem Kombifeld noch den Eintrag (Deklarationen). Der Deklarationsbereich ist der Teil eines Moduls, der sich vor der ersten Prozedur befindet. Hier können verschiedene Dinge eingetragen werden, die für das gesamte Modul gelten. Gelegentlich kommen wir darauf zurück.

Um nun unsere Prozedur zu starten, schreiben wir ins Direktfenster Hallo und drücken Enter:

Hallo
Hallo Welt!

Eine Sub-Prozedur wird also mit Sub eingeleitet, gefolgt von einem Namen, den man selbst frei bestimmt, und endet mit End Sub.

Ein Name ...

VBA berücksichtigt Groß-/Kleinschreibung nicht, behält jedoch die Schreibweise bei, mit der der Name deklariert wurde.

In der Praxis sollte man nach Möglichkeit nur Buchstaben und notfalls Zahlen verwenden. Mehrere Worte schreibt man am besten „am Stück“, mit Großbuchstaben als optische Trennung, also z. B. kleineZahl (Das nennt man „Kamelschreibweise“). Darüber hinaus sollte man keine Begriffe verwenden, die schon von VBA oder der Applikation anderweitig verwendet werden. Viele Objekte haben z. B. eine „Name“-Eigenschaft. Daher sollte man Name nicht zur Benennung verwenden, sondern z. B. Vorname oder Nachname.

Oft muss man rund um eine einzige Sache gleich mehrere Dinge benennen. Dann ist ein einheitliches Namensschema praktisch, so dass man Zusammengehöriges erkennt, und dennoch eine eindeutige Unterscheidbarkeit gegeben ist. Eine Namenskonvention hilft auch, eine Anwendung zu verstehen, die man nicht selbst geschrieben hat. Hierzu findet man in der VBA-Welt meistens ein System aus Präfixen, das auf der ungarischen Notation basiert (ihr Entwickler, Charles Simonyi, war Ungar). Das VBA-Tutorial verwendet allerdings kein Namensschema.