BEISPIEL
Kapitel 13: Programmschnittstellen
Analog zur vorangegangenen Methode kopieren Sie aus der Quellanwendung (z.B. Word) ein Objekt in die
Zwischenablage. Im Quelltext Ihres Programms setzen Sie dann die Eigenschaft Action. Der weitere Ablauf
entspricht dem Vorgehen zur Entwurfszeit. Allerdings wird das Objekt nicht automatisch im Control ge-
speichert, es sei denn, Sie verwenden das gebundene Objektfeld-Control (BoundObjectFrame).
Paste
Sie können auch gänzlich auf einen Dialog verzichten und das Objekt direkt in das Control einfügen. Setzen
Sie dazu die Eigenschaft Action auf acOLEPaste.
Auf eine Fehlerprüfung sollten Sie keinesfalls verzichten, im Fehlerfall wird die Eigenschaft OLEType auf
acOLENone gesetzt.
SourceDoc
Eine weitere Methode, zur Laufzeit ein Objekt in das OLE-Control zu laden, besteht mit dem Zuweisen der
SourceDoc-Eigenschaft.
Erzeugen eines eingebetteten Objekts zur Laufzeit:
ole1.SourceDoc = "c:\kapitel.doc"
ole1.Action = acOLECreateEmbed
Diese Anweisung lädt ein Word-Dokument in das OLE-Control. Der weitere Ablauf entspricht der bisheri-
gen Vorgehensweise.
ActiveX-Code-Komponenten (OLE-Automation)
Für den Access-Programmierer dürften die Code-Komponenten die wohl wichtigste Anwendung von
ActiveX sein. Damit lassen sich Objekte anderer Applikationen (z.B. Word oder Excel) von Ihrem Access-
Programm aus quasi »fernsteuern«. Nach Definition einer entsprechenden Objektvariablen können Sie auf
Eigenschaften und Methoden dieser Objekte genauso zugreifen, als ob es sich um Access-Objekte handeln
würde.
Auf die gleiche Art und Weise kann übrigens auch Access selbst gesteuert werden. Dies wäre zum Beispiel
dann für Sie interessant, wenn Sie zusätzliche Assistenten oder Tools in Visual Basic programmieren und
diese dann mit Access zusammenarbeiten sollen.
Eine weitere Quelle von OLE-Automatisierungsobjekten bietet sich mit den ActiveX-DLLs. Im Unterschied
zu konventionellen DLLs exportieren diese jedoch keine Funktionen und Prozeduren, sondern komplette
Objekte mit deren Eigenschaften, Methoden und Ereignissen.
Konkrete Anwendungsbeispiele zum Thema finden Sie in den Praxisbeispielen
»Ein anderes Programm starten«
»Excel über ActiveX steuern«
ab Seite 873.
846
Objekt-Katalog
Wichtigstes Hilfsmittel für den OLE-Programmierer ist der in Access integrierte Objekt-Katalog. Welche
Objekte angezeigt werden, hängt von den Verweisen ab, die Sie im VBA-Editor unter Extras/Verweise... ein-
gebunden haben.
Abbildung 13.13 Verweise für Objekte
Angezeigt werden im Objektkatalog neben den Klassen alle Methoden, Eigenschaften, Ereignisse und
Konstanten:
Abbildung 13.14 Dialogfeld Objektkatalog
Wer MS Visual C++ oder Visual Basic 6.0 auf seinem Rechner installiert hat, kann auch den Object-Viewer
von Microsoft verwenden. Neben der Anzeige der exportierten Objekte können Sie auch einen Blick in die
Type-Libraries werfen, d. h., Sie können sich alle Methoden, Eigenschaften und Events anzeigen lassen. Die
jeweils benötigten Parameter entnehmen Sie dem »Function Prototype-Listenfeld«.
847
OLE/ActiveX

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.