Objekte (Objects)
Die verschiedenen Office-Anwendungen bieten ihre Funktionalität in Form von Objekten an, auf die mit-
tels VBA-Code zugegriffen werden kann. Obwohl wir mittlerweile im .NET-Zeitalter angekommen sind,
liefert das COM (Component Object Model) immer noch die Grundlage für die Zusammenarbeit der ver-
schiedenen Office-Objekte (auch über Anwendungsgrenzen hinaus).
Aus Anwendersicht kennen Sie bereits die folgenden Datenbankobjekte: Tabelle, Abfrage, Formular,
Bericht, Makro, Modul. Für den VBA-Programmierer sind neben den datenbankspezifischen Objekten
Tabelle und Abfrage vor allem Forms, Reports und Controls von besonderem Interesse, da sie die wesent-
lichen Anwenderschnittstellen zur Verfügung stellen. Hinzu kommen die Module, die keine Objekte im
engeren Sinne sind, sondern lediglich Quelltextbibliotheken darstellen. Etwas in den Hintergrund treten für
uns die Makros, die der routinierte VBA-Programmierer (und sei es nur aus Prinzip!) weitestgehend ver-
meidet.
Eigenschaften (Properties)
Hinter diesem Begriff verbergen sich die Attribute von Objekten, wie z.B. Höhe (Height) und Breite
(Width) eines Textfeldes. Jedes Objekt verfügt über seine eigene Menge von Eigenschaften, die teilweise nur
zur Entwurfszeit (im Eigenschaftenfenster) oder zur Laufzeit (per Quellcode) zugewiesen werden können.
Allgemein unterscheiden wir zwischen Format-, Daten- und anderen Properties (siehe Kapitel 3).
Methoden (Methods)
Diese auf dem Objekt definierten Funktionen und Prozeduren hauchen »Leben« in die bislang nur mit
statischen Attributen behafteten Objekte. So erzeugt z.B. die Line-Methode eine Linie vor dem Hintergrund
eines Reports, mit Print kann Text im Debug-Objekt (Testfenster) ausgegeben werden usw.
Ereignisse (Events)
Diese werden von Nachrichten ausgelöst, die vom Objekt empfangen werden. Dieser Nachrichtenverkehr
stellt die eigentliche Schnittstelle zu Windows dar. Der Mausklick auf ein Formular löst z.B. ein Mouse-
Down-Ereignis für dieses Objekt aus. Wir unterscheiden zwischen Fenster- und Fokus-, Tastatur- und
Maus- sowie Daten- und Filter-Events (siehe Kapitel 3 und 4). Eine Hauptaufgabe des Programmierers ist
das Schreiben von so genannten Ereignisbehandlungsroutinen (Event-Handler), in denen er festlegt, wie
das Objekt bei Eintreffen eines bestimmten Ereignisses zu reagieren hat.
Einen ersten Eindruck der objekt- und ereignisorientierten VBA-Programmierung gewinnen Sie am besten
anhand der Beispiele im Praxisteil dieses Kapitels. Weitere grundlegende Ausführungen zur objektorientier-
ten Programmierung (OOP) folgen in Kapitel 5.
VBA- oder Makro-Programmierung?
Die klassischen Programmiermöglichkeiten unter Microsoft Access (Makro- und Ausdruckseditor, QbE-
Fenster etc.) sind bereits so komfortabel, dass Sie mit Recht die Frage stellen werden: »Wozu brauche ich
denn dann überhaupt noch VBA?«
31
VBA-Programmierung unter Microsoft Office Access 2007

Get Microsoft Office Access 2007-Programmierung - Das Handbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.