Microsoft Office Online
Für Mein Office Online (Was ist das?) registrieren | Anmelden

 
 
Microsoft Office Access
Suchen
Suchen
 
 
 
 
Warnung: Sie haben diese Webseite mit einem nicht unterstützten Browser geöffnet. Diese Webseite wird am besten angezeigt, wenn Sie Microsoft Internet Explorer 6.0 oder höher, Firefox 1.5 oder Netscape Navigator 6.0 oder höher verwenden. Hier finden Sie weitere Informationen über unterstützte Browser.

DruckversionDruckversion Lesezeichen und FreigabeFreigabe
Grundlegende Informationen zu Makros in Access 2007
 

In diesem Artikel wird erläutert, was ein Makro ist und wie Makros Zeit sparen können, indem sie häufig ausgeführte Aufgaben automatisieren. Außerdem werden die Grundlagen für das Erstellen und Verwenden von Makros erklärt, und Sie erfahren, inwiefern Makros für Microsoft Office Access 2007 optimiert wurden.

Inhalt dieses Artikels


Was ist ein Makro?

Ein Makro ist ein Tool, mit dem Sie Aufgaben automatisieren und die Funktionalität in Formularen, Berichten und Steuerelementen erweitern können. Wenn Sie beispielsweise einem Formular eine Befehlsschaltfläche hinzufügen, ordnen Sie das OnClick-Ereignis der Schaltfläche einem Makro zu. Das Makro enthält die Befehle, die jedes Mal ausgeführt werden sollen, wenn auf die Schaltfläche geklickt wird.

Es kann hilfreich sein, sich Makros in Access als eine Art vereinfachte Programmiersprache vorzustellen, die Sie schreiben, indem Sie eine Liste auszuführender Aktionen (Aktion: Die grundlegende Komponente eines Makros; eine selbstständige Anweisung, die mit anderen Aktionen kombiniert werden kann, um Aufgaben zu automatisieren. Dies wird in anderen Makrosprachen manchmal als Befehl bezeichnet.) zusammenstellen. Beim Erstellen eines Makros wählen Sie die einzelnen Aktionen aus einer Dropdownliste aus und geben dann für jede Aktion die erforderlichen Informationen ein. Mit Makros können Sie die Funktionalität in Formularen, Berichten und Steuerelementen erweitern, ohne Code in einem Visual Basic für Applikationen (VBA: Eine Makrosprachenversion von Microsoft Visual Basic zum Programmieren von Microsoft Windows-basierten Anwendungen, die in verschiedenen Microsoft-Programmen enthalten ist.)-Modul (VBA) verfassen zu müssen. Makros stellen eine Untermenge der Befehle bereit, die in VBA verfügbar sind. Die meisten Benutzer finden es einfacher, ein Makro zu erstellen als VBA-Code zu verfassen.

Nehmen Sie einmal an, Sie möchten einen Bericht direkt aus einem Dateneingabeformular starten. Sie können dem Formular eine Schaltfläche hinzufügen und dann ein Makro erstellen, das den Bericht startet. Das Makro kann entweder ein eigenständiges Makro sein (d. h. ein separates Objekt in der Datenbank), das dann mit dem OnClick-Ereignis der Schaltfläche verbunden wird, oder das Makro kann direkt in das OnClick-Ereignis der Schaltfläche eingebettet werden, wobei es sich um ein neues Feature in Office Access 2007 handelt. In jedem Fall wird das Makro ausgeführt und der Bericht gestartet, wenn Sie auf die Schaltfläche klicken.

Sie erstellen ein Makro, indem Sie den Makro-Generator verwenden, der in der folgenden Abbildung gezeigt wird.

Makro-Generator

So zeigen Sie den Makro-Generator an:

  • Klicken Sie auf der Registerkarte Erstellen in der Gruppe Andere auf Makro. Wenn dieser Befehl nicht verfügbar ist, klicken Sie auf den Pfeil unter entweder der Schaltfläche Modul oder der Schaltfläche Klassenmodul, und klicken Sie dann auf Makro. Schaltflächensymbol

Seitenanfang Seitenanfang

Grundlegendes zu Makros

Der Begriff Makro bezieht sich oftmals auf eigenständige Makroobjekte (d. h. auf Objekte, die im Navigationsbereich unter Makros angezeigt werden), aber in Wirklichkeit kann ein Makroobjekt mehrere Makros enthalten. In diesem Fall wird es als eine Makrogruppe bezeichnet. Eine Makrogruppe wird im Navigationsbereich als einzelnes Makroobjekt angezeigt, obwohl sie mehrere Makros enthält. Natürlich kann jedes Makro in einem separaten Makroobjekt erstellt werden, aber es ist oft sinnvoll, mehrere verwandte Makros in einem einzelnen Makroobjekt zu gruppieren. Die einzelnen Makros werden über ihren Namen in der Spalte Makroname: identifiziert.

Ein Makro setzt sich aus einzelnen Aktionen zusammen. Die meisten Aktionen erfordern mindestens ein Argument. Darüber hinaus können Sie den einzelnen Makros in einer Makrogruppe Namen zuweisen, und Sie können Bedingungen hinzufügen, um die Ausführung der einzelnen Aktionen zu steuern. In den folgenden Abschnitten werden diese Features eingehender erläutert.

Makronamen

Wenn das Makroobjekt nur ein einziges Makro enthält, sind Makronamen unnötig. Sie können auf das Makro einfach über den Namen des Makroobjekts verweisen. Bei einer Makrogruppe müssen Sie jedoch jedem Makro einen eindeutigen Namen zuweisen. Wenn die Spalte Makroname im Makro-Generator nicht angezeigt wird, klicken Sie auf der Registerkarte Entwurf in der Gruppe Einblenden/Ausblenden auf Makronamen Schaltflächensymbol. Weitere Informationen zum Ausführen von Makros in Makrogruppen finden Sie weiter unten in diesem Artikel.

Argumente

Ein Argument ist ein Wert, der der Aktion Informationen zur Verfügung stellt, z. B. welche Zeichenfolge in einem Meldungsfeld angezeigt werden soll, welches Steuerelement bedient werden soll usw. Bestimmte Argumente sind erforderlich, andere sind optional. Argumente werden im Bereich Aktionsargumente unten im Makro-Generator angezeigt.

Geben Sie Aktionsargumente ein

Ein neues Feature des Makro-Generators in Office Access 2007 ist die Spalte Argumente, in der Sie die Argumente einer Aktion in derselben Zeile wie die Aktion anzeigen, jedoch nicht bearbeiten können. Dies erleichtert das Lesen des Makros, da Sie nicht mehr jede Aktion auswählen müssen, um ihre Argumente anzuzeigen. Um die Spalte Argumente anzuzeigen, klicken Sie auf der Registerkarte Entwurf in der Gruppe Einblenden/Ausblenden auf Argumente Schaltflächensymbol.

Bedingungen

Eine Bedingung gibt bestimmte Kriterien an, die erfüllt werden müssen, bevor eine Aktion ausgeführt wird. Sie können jeden Ausdruck (Ausdruck: Eine beliebige Kombination aus mathematischen oder logischen Operatoren, Konstanten, Funktionen sowie Namen von Feldern, Steuerelementen und Eigenschaften, die einen einzigen Wert ergibt. Mithilfe von Ausdrücken können Berechnungen ausgeführt, Zeichen bearbeitet oder Daten getestet werden.) verwenden, der zu Wahr/Falsch oder Ja/Nein ausgewertet wird. Die Aktion wird nicht ausgeführt, wenn der Ausdruck zu Falsch, Nein oder 0 (Null) ausgewertet wird. Wird der Ausdruck zu einem anderen Wert ausgewertet, wird die Aktion ausgeführt.

Sie können festlegen, dass eine Bedingung mehrere Aktionen steuert, indem Sie für jede nachfolgende Aktion, auf die die Bedingung angewendet werden soll, Auslassungspunkte (...) in die Spalte Bedingung eingeben. Wenn der Ausdruck zu Falsch, Nein oder 0 (Null) ausgewertet wird, wird keine dieser Aktionen ausgeführt. Wird der Ausdruck zu einem anderen Wert ausgewertet, werden alle Aktionen ausgeführt.

Klicken Sie auf der Registerkarte Entwurf in der Gruppe Einblenden/Ausblenden auf Bedingungen Schaltflächensymbol, um die Spalte Bedingungen im Makro-Generator anzuzeigen.

Zu verwendender Ausdruck Bedingung
[Ort]="Paris" Führt die Aktion aus, wenn Paris der Wert im Ort-Feld des Formulars ist, aus dem das Makro ausgeführt wird.
DomAnzahl ("[Bestell-Nr]"; "Bestellungen")>35 Führt die Aktion aus, wenn das Bestell-Nr-Feld in der Bestellungen-Tabelle mehr als 35 Einträge enthält.
DomAnzahl ("*"; "Bestelldetails"; "[Bestell-Nr]=Formulare![Bestellungen]![Bestell-Nr]")>3 Führt die Aktion aus, wenn im Bestell-Nr-Feld der Bestelldetails-Tabelle mehr als drei Einträge enthalten sind, für die es im Bestell-Nr-Feld im Bestellungen-Formular mehr als drei identische Einträge gibt.
[Versanddatum] Zwischen #02.02.06# Und #02.03.06# Führt die Aktion aus, wenn der Wert im Versanddatum-Feld in dem Formular, aus dem das Makro ausgeführt wird, nicht vor dem 02.02.06 und nicht nach dem 02.03.06 liegt.
Formulare![Artikel]![Lagerbestand]<5 Führt die Aktion aus, wenn der Wert im Lagerbestand-Feld im Artikel-Formular kleiner als fünf ist.
IstNull([Vorname]) Führt die Aktion aus, wenn der Wert im Vorname-Feld in dem Formular, aus dem das Makro ausgeführt wird, gleich Null (Null: Ein Wert, den Sie in ein Feld eingeben oder in Ausdrücken und Abfragen verwenden können, um anzuzeigen, dass Daten fehlen oder unbekannt sind. In Visual Basic kennzeichnet das Schlüsselwort "Null" einen Null-Wert. Einige Felder, beispielsweise Primärschlüsselfelder, können keine Null-Werte enthalten.) ist (d. h. wenn das Feld keinen Wert enthält). Dieser Ausdruck ist identisch mit dem Ausdruck [Vorname] IstNull.
[Land/Region]="D" Und Formulare![Gesamtverkäufe)]![Gesamtbestellungen]>100 Führt die Aktion aus, wenn der Wert im Land/Region-Feld in dem Formular, aus dem das Makro ausgeführt wird, gleich D und der Wert im Gesamtbestellungen-Feld im Gesamtverkäufe-Formular größer als 100 ist.
[Land/Region] In ("Frankreich"; "Italien"; "Spanien") Und Länge([PLZ])<>5 Führt die Aktion aus, wenn der Wert im Land/Region-Feld des Formulars, aus dem das Makro ausgeführt wird, entweder Frankreich, Italien oder Spanien lautet und der Wert im PLZ-Feld nicht 5 Zeichen lang ist.
Meldung("Änderungen bestätigen?";1)=1 Führt die Aktion aus, wenn Sie in einem Dialogfeld, in dem die Meldung-Funktion die Frage "Änderungen bestätigen?" anzeigt, auf OK klicken. Wenn Sie im Dialogfeld auf Abbrechen klicken, ignoriert Access die Aktion.
[TempVars]![MeldungErgebnis]=2 Die Aktion wird ausgeführt, wenn die temporäre Variable, die zum Speichern des Ergebnisses eines Meldungsfelds verwendet wird, gleich 2 ist (vbCancel=2).

 Tipp   Wenn Sie möchten, dass Access eine Aktion vorübergehend überspringt, geben Sie eine Falsch-Bedingung ein. Das vorübergehende Überspringen einer Aktion kann bei der Problembehandlung eines Makros hilfreich sein.

Makroaktionen

Aktionen bilden die Grundbausteine von Makros. Access stellt eine große Anzahl von Aktionen zur Auswahl bereit, wodurch eine Vielzahl von Befehlen aktiviert werden kann. Zu den häufiger verwendeten Aktionen gehören z. B. das Öffnen eines Berichts, das Suchen eines Datensatzes, das Anzeigen eines Meldungsfelds und das Anwenden eines Filters auf ein Formular oder auf einen Bericht.

Seitenanfang Seitenanfang

Neue Makrofunktionen in Office Access 2007

In früheren Versionen von Access konnten viele der häufig verwendeten Funktionen nur mithilfe von VBA-Code ausgeführt werden. In Office Access 2007 wurden neue Features und Makroaktionen hinzugefügt, und Code ist immer seltener erforderlich. Auf diese Weise kann die Datenbankfunktionalität leichter erweitert und die Sicherheit erhöht werden.

  • Eingebettete Makros  Sie können nun Makros in jedes Ereignis einbetten, das in einem Formular, Bericht oder Steuerelement bereitgestellt wird. Ein eingebettetes Makro wird im Navigationsbereich nicht angezeigt. Es wird zu einem Bestandteil des Formulars, Berichts oder Steuerelements, in dem es erstellt wurde. Wenn Sie eine Kopie eines Formulars, Berichts oder Steuerelements mit eingebetteten Makros erstellen, sind diese Makros auch in der Kopie vorhanden.
  • Erhöhte Sicherheit  Wenn die Schaltfläche Alle Aktionen anzeigen Schaltflächensymbol nicht im Makro-Generator hervorgehoben ist, können nur die Makroaktionen und AusführenBefehl-Argumente verwendet werden, die ausgeführt werden können, ohne als vertrauenswürdig eingestuft zu werden. Ein mit diesen Aktionen erstelltes Makro wird selbst dann ausgeführt, wenn die Datenbank deaktiviert ist (d. h. wenn die Ausführung von VBA verhindert wird). Allen Datenbanken mit Makroaktionen, die nicht in der Liste vertrauenswürdiger Aktionen aufgeführt sind (oder Datenbanken mit VBA-Code), muss der vertrauenswürdige Status explizit erteilt werden.
  • Fehlerbehandlung und Debuggen  Office Access 2007 stellt neue Makroaktionen bereit, z. B. BeiFehler (ähnlich der VBA-Anweisung Bei Fehler) und ClearMacroError, mit denen Sie bestimmte Aktionen ausführen können, wenn beim Ausführen des Makros Fehler auftreten. Darüber hinaus ermöglicht es die neue MakroEinzelschritt-Makroaktion, an jeder beliebigen Stelle im Makro in den Einzelschrittmodus zu wechseln, sodass Sie die einzelnen Aktionen nacheinander anzeigen können, um die Funktionsweise des Makros zu beobachten.
  • Temporäre Variablen  Mit den drei neuen Makroaktionen FestlegenTempVar, EntfernenTempVar und EntfernenAlleTempVar können Sie temporäre Variablen in Makros erstellen und verwenden. Sie können sie verwenden, um in Bedingungsausdrücken die Makroausführung zu steuern oder um Daten an Berichte und Formulare zu übergeben. Sie können diese temporären Variablen auch zu jedem anderen Zweck verwenden, bei dem ein Wert temporär gespeichert werden muss. Auf diese temporären Variablen kann auch in VBA zugegriffen werden, sodass Sie sie für die Datenübermittlung zwischen VBA-Modulen verwenden können.

Seitenanfang Seitenanfang


Erstellen eines Makros

Ein Makro oder eine Makrogruppe kann in einem Makroobjekt (manchmal auch eigenständiges Makro genannt) in Office Access 2007 enthalten sein. Ein Makro kann aber auch in eine Ereigniseigenschaft eines Formulars, Berichts oder Steuerelements eingebettet sein. Eingebettete Makros werden zum Bestandteil des Objekts oder des Steuerelements, in das sie eingebettet sind. Eigenständige Makros werden im Navigationsbereich unter Makros angezeigt, eingebettete Makros hingegen nicht.

Features des Makro-Generators

Der Makro-Generator wird zum Erstellen und Bearbeiten von Makros verwendet. So öffnen Sie den Makro-Generator:

  • Klicken Sie auf der Registerkarte Erstellen in der Gruppe Andere auf Makro. Wenn dieser Befehl nicht verfügbar ist, klicken Sie auf den Pfeil unter entweder der Schaltfläche Modul oder der Schaltfläche Klassenmodul, und klicken Sie dann auf Makro. Schaltflächensymbol

    Access zeigt den Makro-Generator an.

Mit dem Makro-Generator wird die Liste der Aktionen erstellt, die beim Ausführen des Makros ablaufen sollen. Wenn Sie den Makro-Generator zum ersten Mal öffnen, werden die Spalten Aktion, Argumente und Kommentar angezeigt.

Unter Aktionsargumente werden nach Bedarf Argumente für die einzelnen Makroaktionen eingegeben und bearbeitet. Es wird ein Beschreibungsfeld angezeigt, das jeweils eine kurze Beschreibung der einzelnen Aktionen und Argumente enthält. Klicken Sie auf eine Aktion oder auf ein Aktionsargument, um die entsprechende Beschreibung anzuzeigen.

Die folgende Tabelle enthält die Befehle, die auf der Registerkarte Entwurf des Makro-Generators zur Verfügung stehen.

Gruppe Befehl Beschreibung
Tools   Ausführen   Führt die im Makro enthaltenen Aktionen aus.
Einzelschritt   Aktiviert den Einzelschrittmodus. Wenn Sie das Makro in diesem Modus ausführen, wird jeweils nur eine Aktion ausgeführt. Wenn die Aktion abgeschlossen ist, wird das Dialogfeld Einzelschritt angezeigt. Klicken Sie in diesem Dialogfeld auf Schritt, um mit der nächsten Aktion fortzufahren. Klicken Sie auf Alle Makros anhalten, um dieses Makro sowie andere ggf. ausgeführte Makros anzuhalten. Klicken Sie auf Weiter, um den Einzelschrittmodus zu beenden und die restlichen Aktionen ohne Unterbrechung auszuführen.
Generator   Diese Schaltfläche ist aktiviert, wenn Sie ein Aktionsargument eingeben, das einen Ausdruck enthalten kann. Klicken Sie auf Generator, um das Dialogfeld Ausdrucks-Generator zu öffnen, in dem Sie den Ausdruck erstellen können.

Zeilen   Zeilen einfügen   Fügt oberhalb der markierten Zeile(n) eine oder mehrere leere Aktionszeilen ein.
Zeilen löschen   Löscht die markierte(n) Aktionszeile(n).

Einblenden/Ausblenden   Alle Aktionen anzeigen   Zeigt weitere bzw. weniger Makroaktionen in der Dropdownliste Aktion an.
  • Um eine ausführlichere Liste von Makroaktionen anzuzeigen, klicken Sie auf Alle Aktionen anzeigen. Wenn eine ausführlichere Liste von Makroaktionen verfügbar ist, ist die Schaltfläche Alle Aktionen anzeigen hervorgehoben. Wenn Sie eine Makroaktion aus dieser Liste auswählen, müssen Sie die Datenbank u. U. explizit als vertrauenswürdig festlegen, bevor Sie die Aktion ausführen können.
  • Wenn Sie von einer ausführlicheren Liste mit Makroaktionen zu einer kompakteren Liste wechseln möchten, in der nur die Makroaktionen angezeigt werden, die in einer als nicht vertrauenswürdig eingestuften Datenbank verwendet werden können, darf die Schaltfläche Alle Aktionen anzeigen nicht hervorgehoben sein.

     Tipp   Wenn die Schaltfläche Alle Aktionen anzeigen hervorgehoben ist, klicken Sie auf die Schaltfläche Alle Aktionen anzeigen, um die Auswahl umzukehren.

    Wenn die Schaltfläche Alle Aktionen anzeigen nicht hervorgehoben ist, steht die kompaktere Liste der Makroaktionen zur Verfügung.
Makronamen   Blendet die Spalte Makroname ein bzw. blendet sie aus. In Makrogruppen sind Makronamen erforderlich, um die einzelnen Makros voneinander zu unterscheiden, doch im Allgemeinen sind Makronamen optional. Weitere Informationen finden Sie unter Erstellen einer Makrogruppe weiter unten in diesem Artikel.
Bedingungen   Zeigt die Spalte Bedingung an bzw. blendet sie aus. Diese Spalte wird zum Eingeben von Ausdrücken verwendet, die steuern, wann eine Aktion ausgeführt wird.
Argumente   Zeigt die Spalte Argumente an bzw. blendet sie aus. In dieser Spalte werden die Argumente der einzelnen Makroaktionen angezeigt, was das vollständige Lesen des Makros vereinfacht. Wenn die Spalte Argumente nicht angezeigt wird, müssen Sie auf die einzelnen Aktionen klicken, um die Argumente unter Aktionsargumente zu lesen. In die Spalte Argumente können keine Argumente eingegeben werden.

Erstellen eines eigenständigen Makros

  1. Klicken Sie auf der Registerkarte Erstellen in der Gruppe Andere auf Makro. Wenn dieser Befehl nicht verfügbar ist, klicken Sie auf den Pfeil unter entweder der Schaltfläche Modul oder der Schaltfläche Klassenmodul, und klicken Sie dann auf Makro. Schaltflächensymbol

    Der Makro-Generator wird angezeigt.

  2. Fügen Sie dem Makro eine Aktion hinzu:
  3. Wenn Sie dem Makro weitere Aktionen hinzufügen möchten, wechseln Sie zu einer anderen Aktionszeile (Aktionszeile: Eine Zeile im oberen Abschnitt des Makrofensters, in der Sie Makronamen, Aktionen, Bedingungen und Kommentare eingeben, die mit einem bestimmten Makro oder einer Makrogruppe verbunden sind.), und wiederholen Sie Schritt 2. Access führt die Aktionen in der Reihenfolge aus, in der Sie sie angegeben haben.

Seitenanfang Seitenanfang

Erstellen einer Makrogruppe

Sie können eine Makrogruppe erstellen, um mehrere verwandte Makros in einem Makroobjekt zu gruppieren.

  1. Klicken Sie auf der Registerkarte Erstellen in der Gruppe Andere auf Makro. Wenn dieser Befehl nicht verfügbar ist, klicken Sie auf den Pfeil unter entweder der Schaltfläche Modul oder der Schaltfläche Klassenmodul, und klicken Sie dann auf Makro. Schaltflächensymbol

    Der Makro-Generator wird angezeigt.

  2. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Einblenden/Ausblenden ggf. auf Makronamen Schaltflächensymbol . Im Makro-Generator wird die Spalte Makroname angezeigt.

     Hinweis   In Makrogruppen sind Makronamen erforderlich, um die einzelnen Makros zu identifizieren. Der Makroname wird in derselben Zeile wie die erste Aktion des Makros angezeigt. Die Spalte Makroname wird für nachfolgende Makroaktionen leer gelassen. Das Makro endet mit dem nächsten Eintrag in der Spalte Makroname.

  3. Geben Sie in der Spalte Makroname einen Namen für das erste Makro in der Gruppe ein.
  4. Fügen Sie die Aktionen hinzu, die vom ersten Makro ausgeführt werden sollen:
    • Klicken Sie in der Spalte Aktion auf den Pfeil, um die Aktionsliste anzuzeigen.
    • Klicken Sie auf die Aktion, die hinzugefügt werden soll.
    • Geben Sie unter Aktionsargumente ggf. Argumente für die Aktion an. Wenn eine kurze Beschreibung der einzelnen Argumente angezeigt werden soll, klicken Sie in das Argumentfeld. Die Beschreibung wird rechts vom Argument angezeigt.

      AnzeigenTipps

      • Wenn es sich bei den Einstellungen der Aktionsargumente um den Namen eines Datenbankobjekts handelt, können Sie das Argument festlegen, indem Sie das Objekt aus dem Navigationsbereich in das Feld Objektname der Aktion ziehen.
      • Sie können eine Aktion auch erstellen, indem Sie ein Datenbankobjekt aus dem Navigationsbereich auf eine leere Zeile im Makro-Generator ziehen. Wenn Sie Tabellen, Abfragen, Formulare, Berichte oder Module auf den Makro-Generator ziehen, wird eine Aktion, mit der die Tabelle, die Abfrage, das Formular oder der Bericht geöffnet wird, in Access hinzugefügt. Wenn Sie ein Makro auf den Makro-Generator ziehen, fügt Access eine Aktion hinzu, die das Makro ausführt.

    • Geben Sie wahlweise einen Kommentar für die Aktion ein.
  5. Wechseln Sie zur Spalte Makroname in der nächsten leeren Zeile, und geben Sie dann einen Namen für das nächste Makro in der Makrogruppe ein.
  6. Fügen Sie die Aktionen hinzu, die vom Makro ausgeführt werden sollen.
  7. Wiederholen Sie die Schritte 5 und 6 für jedes Makro in der Gruppe.

 Hinweise 

  • Wenn Sie eine Makrogruppe ausführen, indem Sie im Navigationsbereich auf die Gruppe doppelklicken oder indem Sie auf der Registerkarte Entwurf in der Gruppe Tools auf Makro ausführen Schaltflächensymbolklicken, führt Access nur das erste Makro aus und hält an, wenn der zweite Makroname erreicht ist.

  • Der Name, den Sie beim Speichern der Makrogruppe angeben, gilt für die gesamte Makrogruppe. Dieser Name wird im Navigationsbereich unter Makros angezeigt. Wenn Sie auf ein einzelnes Makro in einer Makrogruppe verweisen möchten, verwenden Sie die folgende Syntax:

    Makrogruppenname.Makroname

    Der Name Schaltflächen.Artikel verweist z. B. auf das Makro Artikel aus der Makrogruppe Schaltflächen. In einer Liste von Makros, wie der Argumentliste für Makronamen für die AusführenMakro-Aktion zeigt Access das Makro Artikel unter dem Namen Schaltflächen.Artikel an.

Seitenanfang Seitenanfang

Erstellen eines eingebetteten Makros

Der Unterschied zwischen eingebetteten und eigenständigen Makros besteht darin, dass eingebettete Makros in den Ereigniseigenschaften von Formularen, Berichten oder Steuerelementen gespeichert sind. Sie werden nicht als Objekte unter Makros im Navigationsbereich angezeigt. Dies kann die Datenbankverwaltung vereinfachen, da Sie keine separaten Makroobjekte nachverfolgen müssen, die Makros für ein Formular oder einen Bericht enthalten. Führen Sie folgendes Verfahren aus, um ein eingebettetes Makro zu erstellen.

 Hinweis   Eingebettete Makros können nicht mithilfe des Tools Makros zu Visual Basic konvertieren Schaltflächensymbol in der Gruppe Makro auf der Registerkarte Datenbanktools in Visual Basic für Applikationen (VBA) konvertiert werden. Wenn Sie beabsichtigen, die Makros später in VBA-Code zu konvertieren, sollten Sie eigenständige Makros anstelle von eingebetteten Makros verwenden. Dann können Sie sie mithilfe des Tools Makros zu Visual Basic konvertieren in VBA konvertieren.

  1. Öffnen Sie das Formular oder den Bericht mit dem Makro entweder in der Entwurfs- oder in der Layoutansicht. Klicken Sie zum Öffnen eines Formulars bzw. eines Berichts im Navigationsbereich mit der rechten Maustaste auf das Formular oder den Bericht, und klicken Sie dann auf Entwurfsansicht Schaltflächensymboloder auf LayoutansichtSchaltflächensymbol.
  2. Drücken Sie F4, um es anzuzeigen, wenn das Eigenschaftenblatt nicht bereits angezeigt wird.
  3. Klicken Sie auf das Steuerelement oder den Bereich mit der Ereigniseigenschaft, in die das Makro eingebettet werden soll.

    Klicken Sie oben im Eigenschaftenblatt auf die Dropdownliste Bericht, um das ganze Formular bzw. den ganzen Bericht auszuwählen.

  4. Klicken Sie im Eigenschaftenblatt auf die Registerkarte Ereignis.
  5. Klicken Sie auf die Ereigniseigenschaft, in die Sie das Makro einbetten möchten, und klicken Sie dann neben dem Feld auf Schaltflächensymbol.
  6. Klicken Sie im Dialogfeld Generator auswählen auf Makro-Generator, und klicken Sie dann auf OK.
  7. Klicken Sie im Makro-Generator auf die erste Zeile der Spalte Aktion.
  8. Klicken Sie in der Dropdownliste Aktion auf die gewünschte Aktion.
  9. Geben Sie alle erforderlichen Argumente in den Bereich Aktionsargumente ein, und wechseln Sie dann zur nächsten Aktionszeile.
  10. Wiederholen Sie die Schritte 8 und 9, bis das Makro abgeschlossen ist.
  11. Klicken Sie auf Speichern Schaltflächensymbol und dann auf SchließenSchaltflächensymbol .

Das Makro wird jedes Mal ausgeführt, wenn das Ereignis ausgelöst wird.

 Hinweis   In Access können Sie eine Makrogruppe als eingebettetes Makro erstellen. Allerdings wird beim Auslösen des Ereignisses nur das erste Makro der Gruppe ausgeführt. Nachfolgende Makros werden ignoriert, es sei denn, sie werden von dem eingebetteten Makro aus aufgerufen (z. B. von der BeiFehler-Aktion).

Beispiel: Einbetten eines Makros in das "On No Data"-Ereignis eines Berichts

Wenn Sie einen Bericht ausführen, dessen Datenquelle keine Einträge enthält, zeigt der Bericht eine leere Seite an, d. h. eine Seite ohne Daten. Möglicherweise würden Sie stattdessen ein Meldungsfeld bevorzugen und den Bericht lieber nicht anzeigen. In dieser Situation bietet sich ein eingebettetes Makro an.

  1. Öffnen Sie den Bericht in der Entwurfs- oder Layoutansicht.
  2. Drücken Sie F4, um es anzuzeigen, wenn das Eigenschaftenblatt nicht bereits angezeigt wird.
  3. Klicken Sie im Eigenschaftenfenster auf die Registerkarte Ereignis.
  4. Klicken Sie auf Bei Ohne Daten.
  5. Klicken Sie auf Schaltflächensymbol.
  6. Klicken Sie im Dialogfeld Generator auswählen auf Makro-Generator, und klicken Sie dann auf OK.
  7. Geben Sie die Aktionen und Argumente aus der folgenden Tabelle ein.

    Aktion Argumente
    Meldung Keine Datensätze gefunden, Ja, Informationen, Keine Daten
    AbbrechenEreignis [Keine Argumente]

    Beachten Sie, dass die Argumente in der vorhergehenden Tabelle so angezeigt werden, wie sie in der Spalte Argumente zu sehen sind. Sie werden jedoch in Wirklichkeit unter Aktionsargumente wie in der folgenden Tabelle beschrieben eingegeben.

    Aktionsargument Wert
    Meldung Keine Datensätze gefunden
    Signalton Ja
    Typ Informationen
    Titel Keine Daten

  8. Klicken Sie auf Schließen.

    Der Makro-Generator wird geschlossen, und das On No Data-Ereignis zeigt [Eingebettetes Makro] an.

  9. Speichern und schließen Sie den Bericht.

Wenn der Bericht das nächste Mal ausgeführt wird, ohne dass Datensätze gefunden werden, wird das Meldungsfeld angezeigt. Wenn Sie im Meldungsfeld auf OK klicken, wird der Bericht abgebrochen, ohne die leere Seite anzuzeigen.

Seitenanfang Seitenanfang

Bearbeiten eines Makros

  • So fügen Sie eine Aktionszeile ein   Klicken Sie auf die Makrozeile, über der die neue Aktion eingefügt werden soll, und klicken Sie dann auf der Registerkarte Entwurf in der Gruppe Zeilen auf Zeilen einfügen Schaltflächensymbol.
  • So löschen Sie eine Aktionszeile   Klicken Sie auf die zu löschende Aktionszeile, und klicken Sie dann auf der Registerkarte Entwurf in der Gruppe Zeilen auf Zeilen löschen Schaltflächensymbol.
  • So verschieben Sie eine Aktionszeile   Markieren Sie die Aktion, indem Sie auf die Zeilenauswahl links vom Aktionsnamen klicken. Ziehen Sie die Aktion mithilfe der Zeilenauswahl an eine andere Stelle.

Seitenanfang Seitenanfang

Weitere Informationen zu Makroaktionen

Während Sie im Makro-Generator arbeiten, erhalten Sie weitere Informationen zu einer Aktion oder zu einem Argument, indem Sie darauf klicken. Im Feld in der rechten unteren Ecke des Makro-Generator-Fensters wird dann eine Beschreibung angezeigt. Außerdem ist jeder Makroaktion ein Hilfeartikel zugewiesen. Weitere Informationen zu einer Aktion erhalten Sie, indem Sie in der Aktionsliste auf die Aktion klicken und dann F1 drücken.

Seitenanfang Seitenanfang

Ausführen eines Makros

Eigenständige Makros können folgendermaßen ausgeführt werden: direkt (z. B. aus dem Navigationsbereich), in einer Makrogruppe, von einem anderen Makro aus, von einem VBA-Modul aus oder als Reaktion auf ein Ereignis, das in einem Formular, Bericht oder Steuerelement auftritt. Ein Makro, das in ein Formular, einen Bericht oder ein Steuerelement eingebettet ist, kann ausgeführt werden, indem Sie auf der Registerkarte Entwurf auf Ausführen Schaltflächensymbol klicken, während sich das Makro in der Entwurfsansicht befindet. Andernfalls wird das Makro nur ausgeführt, wenn das ihm zugeordnete Ereignis ausgelöst wird.

Direktes Ausführen eines Makros

Sie haben folgende Möglichkeiten, ein Makro direkt auszuführen:

  • Wechseln Sie im Navigationsbereich zum Makro, und doppelklicken Sie dann auf den Makronamen.
  • Klicken Sie auf der Registerkarte Datenbanktools in der Gruppe Makro auf Makro ausführen Schaltflächensymbol. Klicken Sie in der Liste Makroname auf das Makro und dann auf OK.
  • Wenn das Makro in der Entwurfsansicht geöffnet ist, klicken Sie auf der Registerkarte Entwurf in der Gruppe Tools auf Ausführen Schaltflächensymbol. Klicken Sie im Navigationsbereich mit der rechten Maustaste auf das Makro, und klicken Sie dann auf Entwurfsansicht Schaltflächensymbol, um das Makro in der Entwurfsansicht zu öffnen.

Ausführen eines Makros in einer Makrogruppe

Sie können ein Makro, das sich in einer Makrogruppe befindet, auf folgende Arten ausführen:

Ausführen eines Makros aus einem anderen Makro oder aus einer VBA-Prozedur

Fügen Sie dem Makro oder der Prozedur die AusführenMakro-Aktion hinzu.

  • Wenn Sie die AusführenMakro-Aktion einem Makro hinzufügen möchten, klicken Sie in der Aktionsliste in einer leeren Aktionszeile auf AusführenMakro und legen dann das Argument Makroname auf den Namen des Makros fest, das ausgeführt werden soll.
  • Wenn Sie die AusführenMakro-Aktion einer VBA-Prozedur hinzuzufügen möchten, fügen Sie die RunMacro-Methode des DoCmd-Objekts in die Prozedur ein und geben dann den Namen des Makros an, das ausgeführt werden soll. Die folgende Instanz der RunMacro-Methode führt z. B. das Makro My Macro aus:
    					DoCmd.RunMacro "My Macro"
    				

Ausführen eines Makros oder einer Ereignisprozedur als Reaktion auf ein Ereignis in einem Formular, Bericht oder Steuerelement

Obwohl Sie nun Makros direkt in die Ereigniseigenschaften von Formularen, Berichten und Steuerelementen einbetten können, haben Sie auch die Möglichkeit, eigenständige Makros zu erstellen und diese dann an Ereignisse zu binden. Auf diese Weise werden Makros in früheren Versionen von Access verwendet.

  1. Nachdem Sie das eigenständige Makro erstellt haben, öffnen Sie das Formular oder den Bericht in der Entwurfs- oder Layoutansicht.
  2. Öffnen Sie das Eigenschaftenblatt für das Formular oder den Bericht oder aber für einen Bereich oder ein Steuerelement im Formular oder Bericht.
  3. Klicken Sie auf die Registerkarte Ereignis.
  4. Klicken Sie auf die Ereigniseigenschaft für das Ereignis, das das Makro starten soll. Wenn das Makro z. B. durch das Change-Ereignis gestartet werden soll, klicken Sie auf die Bei Änderung-Eigenschaft.
  5. Klicken Sie in der Dropdownliste auf den Namen des eigenständigen Makros.
  6. Speichern Sie das Formular bzw. den Bericht.

Seitenanfang Seitenanfang

Anzeige