Die Klassenmodule werden wir hier nur kurz beschrieben, da Sie sich zunächst mit den einfachen Modulen beschäftigen und sich erst später an die Arbeit der Klassenmodule herantasten sollten.
Was Module sind haben Sie ja jetzt bereits kennengelernt. Die Klassenmodule sind nur eine besondere Art von Modulen. Zunächst schreiben Sie auch hier Ihren Code, so wie Sie es bereits kennen. Durch ein paar Besonderheiten wird ein Klasseenmodul zu einem Objekt in VBA. Das hat aber - wie sollte es auch anders sein - einige Konsequenzen.
Um Ihnen die Auswirkungen zu erklären, wollen wir zunächst einmal ein einfaches Objekt anschauen, welches Sie sicherlich schon kennengelernt haben - nämlich ActiveDocument.
Das ActiveDocument ist ein Objekt in VBA. Wenn Sie im VBA-Editor einfach dieses Objekt in eine Prozedur schreiben und einen Punkt setzen, dann bekommen Sie eine Auswahl an verschiedenen Befehlen angeboten. Das sind die Eigenschaften und Methoden. Diese können Sie an den Icons vor den Befehlen erkennen.
Eine Methode ist zum Beispiel Save, womit das aktive Dokument gespeichert wird. Wie das Word macht, interessiert uns nicht, der Befehl reicht aus. Eine Eigenschaft in diesem Zusammenhang ist Saved, womit nur festgelegt wird, ob das Dokument bereits gespeichert wurde, es wird also keine Aktion ausgeführt.
Nun werden Sie sich fragen, was das mit einem Klassenmodul zu tun hat. Eigentlich ganz einfach: Das Klassenmodul kann genau wie dieses Objekt Eigenschaften und Methoden erhalten, die Sie aber selbst bestimmen. Dabei spielen die Deklarationen von den Variablen, Prozeduren und Funktionen eine Rolle. Denn so wird bestimmt, welche Eigenschaften ein Klassenmodul haben kann. Genau so funktioniert es dann auch mit den Methoden. Übrigens auch Ereignisse können mit den Klassenmodulen selbst erstellt werden. Das sei hier aber nur der Vollständigkeit halber erwähnt.
Der Vorteil der Klassenmodule ist etwas komplizierter zu beschreiben. Es hat erst einmal auch etwas mit einer Speicherbelegung während der Laufzeit Ihres Codes zu tun. Denn da hat ein Klassenmodul, dass man ja immer wieder benutzen kann, klare Vorteile. Die Erklärung, wie das genau funktionert, würde hier zu weit führen.
Wir empfehlen Ihnen, die Klassenmodule erst auszuprobieren, wenn Sie bereits einige Erfahrung mit den Modulen, Prozeduren und Funktionen haben.