Datenmakros in Access ermöglichen ihnen das Hinzufügen von Logik zu Ereignissen, die in Tabellen auftreten, z. B. dem Hinzufügen, Aktualisieren oder Löschen von Daten. Sie ähneln "Triggern" in Microsoft SQL Server. In diesem Artikel erfahren Sie, wie Sie Datenmakros erstellen und debuggen.
Inhalt dieses Artikels
Informationen zu Datenmakros
Datenmakros werden über die Registerkarte Tabelle verwaltet, während eine Tabelle in der Datenblattansicht angezeigt wird, und werden im Navigationsbereich nicht unter Makros angezeigt. Unter anderem können Sie Datenmakros verwenden, um die Genauigkeit von Daten in einer Tabelle zu überprüfen und sicherzustellen. Es gibt zwei Standard Typen von Datenmakros: solche, die durch Tabellenereignisse (auch als "ereignisgesteuerte" Datenmakros bezeichnet) ausgelöst werden, und solche, die als Reaktion auf den Namen aufgerufen werden (auch als "benannte" Datenmakros bezeichnet).
Create eines ereignisgesteuerten Datenmakros
Tabellenereignisse treten auf, wenn Sie Daten innerhalb einer Tabelle hinzufügen, aktualisieren oder löschen. Sie können ein Datenmakro so programmieren, dass es unmittelbar nach einem dieser drei Ereignisse oder unmittelbar vor einem Lösch- oder Änderungsereignis ausgeführt wird. Gehen Sie wie folgt vor, um ein Datenmakro an ein Tabellenereignis anzufügen:
-
Doppelklicken Sie im Navigationsbereich auf die Tabelle, der Sie das Datenmakro hinzufügen möchten.
-
Klicken Sie auf der Registerkarte Tabelle in der Gruppe Vorereignisse oder in der Gruppe Nach ereignissen auf das Ereignis, dem Sie das Makro hinzufügen möchten. Wenn Sie beispielsweise ein Datenmakro erstellen möchten, das nach dem Löschen eines Datensatzes aus der Tabelle ausgeführt wird, klicken Sie auf Nach Löschen.
Hinweis: Wenn einem Ereignis bereits ein Makro zugeordnet ist, wird das zugehörige Symbol im Menüband hervorgehoben angezeigt.
Der Makro-Generator wird in Access geöffnet. Wenn zuvor ein Makro für dieses Ereignis erstellt wurde, zeigt Access das vorhandene Makro an.
-
Fügen Sie die Aktionen hinzu, die das Makro ausführen soll.
-
Speichern und schließen Sie das Makro.
Weitere Informationen zum Erstellen von Makros finden Sie im Artikel Create eines Benutzeroberflächenmakros.
Create eines benannten Datenmakros
Ein benanntes oder "eigenständiges" Datenmakro ist einer bestimmten Tabelle, aber nicht einem bestimmten Ereignis zugeordnet. Sie können benannte Datenmakros aus jedem anderen Datenmakro oder Standardmakro aufrufen.
-
Doppelklicken Sie im Navigationsbereich auf die Tabelle, der Sie das Datenmakro hinzufügen möchten.
-
Klicken Sie auf der Registerkarte Tabelle in der Gruppe Benannte Makros auf Benanntes Makro und dann auf Create benanntes Makro.
Access öffnet den Makro-Generator, in dem Sie mit dem Hinzufügen von Aktionen beginnen können.
Weitere Informationen zum Erstellen von Makros finden Sie im Artikel Create eines Benutzeroberflächenmakros.
Informationen zu Parametern
Mit Parametern können Sie Werte an ein benanntes Datenmakro übergeben, sodass sie in bedingten Anweisungen oder anderen Berechnungen verwendet werden können. Außerdem können Sie Objektverweise aus Standardmakros an das Datenmakro übergeben.
Hinweis: Parameter sind in Ereignisdatenmakros nicht verfügbar.
So fügen Sie einem Datenmakro einen Parameter hinzu:
-
Klicken Sie oben im Makro auf Create Parameter.
-
Geben Sie im Feld Name einen eindeutigen Namen für den Parameter ein. Dies ist der Name, den Sie verwenden, um auf den Parameter in Ausdrücken zu verweisen.
-
Geben Sie optional eine Beschreibung für den Parameter in das Feld Beschreibung ein. Es wird empfohlen, eine Beschreibung einzugeben, da später, wenn Sie den Parameter verwenden, der hier eingegebene Beschreibungstext in einer QuickInfo angezeigt wird. Dadurch können Sie sich den Zweck des Parameters merken.
Um ein benanntes Datenmakro aus einem anderen Makro auszuführen, verwenden Sie die Aktion AusführenDataMacro . Die Aktion stellt ein Feld für jeden Parameter bereit, den Sie erstellt haben, damit Sie die erforderlichen Werte angeben können.
Verwalten von Datenmakros
Datenmakros werden nicht im Navigationsbereich unter Makros angezeigt. Sie müssen die Menübandbefehle in der Tabellendatenblattansicht oder tabellenentwurfsansicht verwenden, um Datenmakros zu erstellen, zu bearbeiten, umzubenennen und zu löschen.
Bearbeiten eines ereignisgesteuerten Datenmakros
-
Doppelklicken Sie im Navigationsbereich auf die Tabelle, die das Datenmakro enthält, das Sie bearbeiten möchten.
-
Klicken Sie auf der Registerkarte Tabelle in der Gruppe Vorhersereignisse oder in der Gruppe Nach ereignissen auf das Ereignis für das Makro, das Sie bearbeiten möchten. Wenn Sie beispielsweise das Datenmakro bearbeiten möchten, das nach dem Löschen eines Datensatzes aus der Tabelle ausgeführt wird, klicken Sie auf Nach löschen.
Hinweis: Wenn einem Ereignis kein Makro zugeordnet ist, ist sein Symbol im Menü nicht hervorgehoben.
Access öffnet den Makro-Generator, und Sie können mit der Bearbeitung des Makros beginnen.
Bearbeiten eines benannten Datenmakros
-
Doppelklicken Sie im Navigationsbereich auf eine beliebige Tabelle, um sie in der Datenblattansicht zu öffnen.
-
Klicken Sie auf der Registerkarte Tabelle in der Gruppe Benannte Makros auf Benanntes Makro, und zeigen Sie dann auf Benanntes Makro bearbeiten.
-
Klicken Sie im Untermenü auf das Datenmakro, das Sie bearbeiten möchten.
Access öffnet den Makro-Generator, und Sie können mit der Bearbeitung des Makros beginnen.
Umbenennen eines benannten Datenmakros
-
Doppelklicken Sie im Navigationsbereich auf eine beliebige Tabelle, um sie in der Datenblattansicht zu öffnen.
-
Klicken Sie auf der Registerkarte Tabelle in der Gruppe Benannte Makros auf Benanntes Makro und dann auf Makro umbenennen/löschen.
-
Klicken Sie im Dialogfeld Datenmakro-Manager neben dem Datenmakro, das Sie umbenennen möchten, auf Umbenennen .
Access wählt den aktuellen Makronamen aus.
-
Geben Sie den neuen Namen ein, oder bearbeiten Sie den vorhandenen Namen, und drücken Sie dann die EINGABETASTE.
Löschen eines Datenmakros
Verwenden Sie dieses Verfahren, um alle benannten oder ereignisgesteuerten Datenmakros zu löschen:
-
Doppelklicken Sie im Navigationsbereich auf eine beliebige Tabelle, um sie in der Datenblattansicht zu öffnen.
-
Klicken Sie auf der Registerkarte Tabelle in der Gruppe Benannte Makros auf Benanntes Makro und dann auf Makro umbenennen/löschen.
-
Klicken Sie im Dialogfeld Datenmakro-Manager neben dem Datenmakro, das Sie umbenennen möchten, auf Löschen .
Hinweis: Sie können ein ereignisgesteuertes Makro auch löschen, indem Sie alle zugehörigen Aktionen löschen.
Debuggen von Datenmakros
Einige gängige Tools zum Debuggen von Makros, z. B. der Befehl Einzelner Schritt und die MessageBox-Makroaktion, sind für Datenmakros nicht verfügbar. Wenn jedoch Probleme mit einem Datenmakro auftreten, können Sie die Tabelle Anwendungsprotokoll in Kombination mit den Makroaktionen OnError, RaiseError und LogEvent verwenden, um Datenmakrofehler zu finden.
Anzeigen der Anwendungsprotokolltabelle
Die Anwendungsprotokolltabelle ist eine Systemtabelle (mit dem Namen USysApplicationLog), die standardmäßig nicht im Navigationsbereich angezeigt wird. Wenn in einem Datenmakro ein Fehler auftritt, können Sie möglicherweise feststellen, was passiert ist, indem Sie die Informationen in der Tabelle Anwendungsprotokoll anzeigen.
Gehen Sie wie folgt vor, um die Tabelle Anwendungsprotokoll anzuzeigen:
-
Klicken Sie auf Datei , um die Microsoft Backstage-Ansicht zu öffnen.
-
Klicken Sie auf der Registerkarte Informationen auf Anwendungsprotokolltabelle anzeigen.
Hinweis: Wenn die Schaltfläche Anwendungsprotokolltabelle anzeigen nicht angezeigt wird, bedeutet dies, dass für diese Datenbank noch keine Anwendungsprotokolltabelle erstellt wurde. Nachdem ein Ereignis protokolliert wurde, wird die Schaltfläche auf der Registerkarte Info angezeigt.
Sie können Zeilen in der Tabelle Anwendungsprotokoll erstellen, indem Sie die LogEvent-Aktion oder die Aktion AuslösenFehler verwenden, und Sie können steuern, wie Access auf Fehler reagiert, indem Sie die OnError-Aktion verwenden.