Die Integration von Access 2003 mit anderen Microsoft Office-Anwendungen

Visual Basic für Applikationen (VBA) ist keine Programmiersprache für Microsoft Access 2003 allein. Es ist eine Programmiersprache für alle Anwendungsprogramme, die Automatisierung unterstützen. Automatisierung

(Mit einem Kapital EIN) Bezieht sich auf die Fähigkeit eines Programms programmatisch manipuliert werden oder automatisch unter Verwendung einer Programmiersprache wie VBA gesteuert. Alle wichtigen Anwendungen in Microsoft Office, einschließlich Microsoft Access, Microsoft Excel, Microsoft Outlook, Microsoft Powerpoint und Microsoft Word-Unterstützung Automation. Sie können Code schreiben, um automatisch Daten zwischen ihnen zu teilen.

Die Begriffe Component Object Model (COM) und OLE-Automatisierung Automation sind ältere Begriffe für (aber sind im Grunde gleichbedeutend mit), was derzeit genannt wird.

Bevor Sie beginnen das Schreiben von Code

Bevor Sie Daten zwischen Access und anderen Programmen der Microsoft Office Suite austauschen, beachten Sie, dass das Schreiben von Code, den Job zu tun, ist nur selten erforderlich. Sie können viel Import und Export von Daten zwischen Microsoft Office-Anwendungen zu tun, ohne das Schreiben überhaupt keinen Code. Zum Beispiel können Sie die folgenden Aktionen ausführen:

  • Import und Export von Daten von Optionen auf dem Access File-Menü.
  • E-Mail-Access-Objekte, wie Berichte, indem Sie Senden an -> Mail-Empfänger.
  • Verwenden Sie die Office Feature Objekte an andere Programme zu senden.
  • Verwenden Sie grundlegende Windows-Cut-and-Paste-Techniken und OLE (Object Linking and Embedding) und Verknüpfen von Daten zwischen Programmen kopieren.
  • Zusammenführen von Daten aus Access-Tabellen in Microsoft Word Briefe, Etiketten, Umschläge oder andere Berichte, die Word-Seriendruck-Funktion. (Suchen Sie die Word-Hilfe-System für verschmelzen.)

Wenn Sie sich nur um Daten von Zugang zu einem anderen Programm (oder umgekehrt) suchen, das Schreiben von Code ist wahrscheinlich nicht der einfachste Ansatz. Jede der bisherigen Ansätze sind leichter als Schreiben von benutzerdefinierten VBA-Code, den Job zu tun.

Natürlich, wenn in einem sprichwörtlich blauen Mond, kommen Sie eine Situation, in dem VBA-Code zu schreiben der einzige ist, oder vielleicht nur die beste Weg, um die Arbeit zu erledigen. Dieser Artikel zeigt Ihnen einige grundlegende Konzepte, die Sie verstehen wollen, werden.

Laden Sie die entsprechenden Objektmodelle

Das Objektmodell von Access bietet die Möglichkeit, die sich auf Objekte mit Namen, so dass Sie diese Objekte mit Hilfe von VBA-Code bearbeiten können. Jede Office-Anwendung Programm, das sich auf VBA aussetzt hat ein Objektmodell, wie Zugriff hat. Nach einer Objektbibliothek Anwendungsprogramm zur Verfügung steht, können Sie VBA verwenden, um diese Anwendung zu steuern.

Ein Objektmodell definiert, die Namen und die Organisation von Objekten in der Anwendung. Eine Objektbibliothek ist die eigentliche Datei, die auf Ihrer Festplatte gespeichert ist und legt fest, dass konzeptionelle Objektmodell.

Bevor Sie Code schreiben, eine externe Anwendung von Access zu steuern, müssen Sie die entsprechende Objektbibliothek in das Dialogfeld Verweise in Access zu laden. Folge diesen Schritten:

1. Stellen Sie sicher, dass Sie in dem Visual Basic-Editor sind.

Drücken Sie Alt + F11, wenn Sie in der Access-Programmfenster.

2. Wählen Sie Extras -> Referenzen aus dem Visual Basic-Editor-Menü.

Das Dialogfeld Verweise öffnet.

3. Blättern Sie durch die Liste Verfügbare Verweise, und wählen Sie die Objektbibliotheken für die Programme, die Sie steuern möchten.

In Abbildung 1 sind die ausgewählten Objektbibliotheken für Access, Excel, Outlook, Powerpoint und Word (unter anderem).


Abbildung 1: Mehrere Objektbibliotheken in dem Dialogfeld Verweise ausgewählt.

4. Klicken Sie auf OK.

Alle ausgewählten Objektbibliotheken wird geöffnet, und Sie haben Zugriff auf alle ihre Objektmodelle von diesem Punkt an.

Entladen Objektbibliotheken

Weitere Objektbibliotheken als nötig Laden ist verschwenderisch, weil VBA-Programme langsamer laufen. Im wirklichen Leben, müssen Sie selten alle Objektbibliotheken zur Verfügung (siehe Abbildung 1) zu wählen, wenn Sie wirklich mit all diesen Programmen aus der aktuellen Datenbank soll zu interagieren.

Sie können Bibliotheken entladen so einfach, wie Sie sie laden. Öffnen Sie das Dialogfeld Verweise und entfernen Sie das Häkchen neben jedem Objekt-Bibliothek, die Sie nicht wirklich beabsichtigen, zu verwenden.

Erforschung eines Objektmodell des Programms

Der Object Browser in Visual Basic-Editor ermöglicht den Zugriff auf alle Objekt Modelle, die gerade in dem Dialogfeld Verweise ausgewählt. Jede geladene Objektmodell enthält viele Objekte, Klassen, Eigenschaften und dergleichen. Aber für Automation, wollen Sie in erster Linie an jedem Programm der Anwendungsobjekt zu suchen. Zum Beispiel setzt die Access Application Object Access zu anderen Programmen, die Automatisierung unterstützen. Die Excel-Application-Objekt (in der Excel-Objektbibliothek enthalten) macht Excel zu anderen Automatisierungsprogramme und so weiter.

Um den Objektbrowser im VBA-Editor zu öffnen, wählen Sie Ansicht -> Objekt-Browser oder drücken Sie F2. Um Hilfe mit einem Element im Objektbrowser zu erhalten, klicken Sie auf seinen Namen, und klicken Sie dann auf die Hilfe-Schaltfläche (?) Im Objekt-Browser-Symbolleiste.

Wenn Sie sich entscheiden aus der Liste Projekt / Bibliothek im Objekt Brower und blättern Sie die Liste Klassen in der linken Spalte nach unten, sehen Sie mehrere Anwendungsobjekte. Wenn Sie eine der Anwendungsobjekte klicken, wird der Name der Anwendung, in der Nähe der Unterseite des Dialogfelds nach unten. Die Mitglieder dieses Anwendungsobjekt erscheinen im Bereich rechts, wie in Abbildung 2 dargestellt.


Figur 2: Der Object Browser nach mehreren Objektbibliotheken hinzufügen.

Einstellen Verweise auf andere Programme

Mit Objektmodelle geladen, sind Sie Verweise auf verfügbaren Programme in VBA-Code zu starten bereit einrichten. Der erste Schritt ist eine Dim-Anweisung verwenden, um eine Objektvariable zu erstellen, die auf die Anwendung bezieht sich auf die Sie, mit folgender Syntax eine Verbindung herstellen möchten:

Dim anyname As [Neu] program.Application

In der Syntax, jeder Name ist jeder Name, den Sie in Ihrem Code verwendet werden mögen, um die Anwendung zu verweisen. Das Programm Argument ist der offizielle Name des Automation-Programm. Das neue Schlüsselwort ist optional. Wenn enthalten, öffnet sich das neue Schlüsselwort eine Kopie der Anwendung im Hintergrund (nicht unbedingt sichtbar auf dem Bildschirm), bevor der Code ausgeführt wird.

Einige Beispiele für Dim-Anweisungen sind die folgenden:

Dim appExcel As New Excel.Application
Dim appOutlook As New Outlook.Application
Dim appPowerPoint As New PowerPoint.Application
Dim appWord As New Word.Application

Eine Dim-Anweisung ist nur gültig, wenn das entsprechende Objekt-Bibliothek geladen wird. Zum Beispiel schlägt die Dim appWord As New Word.Application Anweisung, wenn die Objektbibliothek für Microsoft Word ist nicht im Dialogfeld Verweise ausgewählt.

Die Dim-Anweisungen lediglich Objektvariablen erstellen, die aus dem Code der Anwendung verweisen. Um tatsächlich die Verbindung zu einer Anwendung für das Anwendungsobjekt zu machen, müssen Sie das Objekt Variablennamen auf die Anwendung zu setzen. Die Syntax ist

Set objectVariable Als Create ( "appName.Application")

woher objectVariable ist der gleiche wie der Name, den Sie in der Dim-Anweisung angegeben, und App Name ist der Name des Anwendungsprogramms. Mit Bezug auf die früheren Dim-Anweisungen, die Set-Anweisungen, die Sie für jede definierte Objektvariable verwenden, sind die folgenden:

Set appExcel = Create ( "Excel.Application")
Set appOutlook = Create ( "Outlook.Application")
Set appPowerPoint = Create ( "PowerPoint.Application")
Set appWord = Create ( "Word.Application")

Jede Anwendung in der Office-Suite verfügt über ein eigenes Objektmodell mit seiner eigenen Objekte und Eigenschaften, aber die grundlegenden Ideen sind gleich, unabhängig von welchem ​​Programm und ein Objektmodell Sie verwenden.

Menü