Erstellen eines Benutzeroberflächenmakros

Wichtig :  Dieser Artikel wurde maschinell übersetzt. Bitte beachten Sie den Haftungsausschluss. Die englische Version des Artikels ist als Referenz hier verfügbar: hier.

In Microsoft Access werden Makros, die Benutzeroberflächenobjekten wie Befehlsschaltflächen, Textfeldern, Formularen und Berichten zugeordnet sind, als Benutzeroberflächenmakros bezeichnet. Damit unterscheiden sie sich von Datenmakros, die Tabellen zugeordnet sind. Benutzeroberflächenmakros werden verwendet, um eine Reihe von Aktionen zu automatisieren, etwa das Öffnen eines anderen Objekts, das Anwenden eines Filters, das Starten eines Exportvorgangs und viele andere Aufgaben. Dieser Artikel macht Sie mit den Neuerungen des weiterentwickelten Makro-Generators vertraut und zeigt die grundlegenden Aufgaben zum Erstellen eines Benutzeroberflächenmakros.

Hinweis : Dieser Artikel gilt nicht für Access Web Apps, d. h. für Datenbanken, die Sie mit Access entwerfen und online veröffentlichen. Weitere Informationen finden Sie unter Erstellen einer Access-App.

Inhalt dieses Artikels

Übersicht

Neuerungen

Erstellen eines eigenständigen Makros

Erstellen eines eingebetteten Makros

Hinzufügen von Aktionen zu einem Makro

Steuern des Programmablaufs mit "Wenn", "Sonst Wenn" und "Sonst"

Erstellen von Untermakros

Gruppieren von verwandten Aktionen

Erweitern und Reduzieren von Makroaktionen oder Blöcken

Kopieren und Einfügen von Makroaktionen

Freigeben eines Makros für andere

Ausführen eines Makros

Debuggen eines Makros

Konvertieren eines Makros in VBA-Code

Übersicht

Makros können in Makroobjekten (manchmal auch als eigenständige Makros bezeichnet) enthalten oder in die Ereigniseigenschaften von Formularen, Berichten oder Steuerelementen eingebettet sein. Eingebettete Makros werden Teil des Objekts oder des Steuerelements, in das sie eingebettet sind. Makroobjekte sind im Navigationsbereich unter Makros sichtbar, eingebettete Makros nicht.

Jedes Makro besteht aus einer oder mehreren Makroaktionen. Je nach Kontext, in dem Sie arbeiten, stehen einige Makroaktionen möglicherweise nicht zur Verfügung. Insbesondere beim Entwerfen einer Webdatenbank stehen bestimmte Makroaktionen, die mit dem Feature "In Access Services veröffentlichen" nicht kompatibel sind, nicht zur Verfügung.

Weitere Informationen zum Erstellen von Webdatenbanken finden Sie im Artikel Erstellen einer im Web freizugebenden Access-Datenbank.

Seitenanfang

Neuerungen

Ab Access 2010 bietet dieses Programm einen neuen Designer zum Erstellen von Makros. Nachfolgend sind einige Vorteile dieses neuen Entwurfs aufgeführt:

  • Aktionskatalog    Makroaktionen sind nach Typen geordnet und können durchsucht werden.

  • IntelliSense    Beim Eingeben von Ausdrücken schlägt IntelliSense mögliche Werte vor und erlaubt Ihnen die Auswahl des richtigen Werts.

  • Tastenkombinationen    Verwenden Sie Tastenkombinationen zum schnelleren und einfacheren Schreiben von Makros.

  • Programmablauf    Erstellen Sie besser lesbare Makros mit Kommentarzeilen und Aktionsgruppen.

  • Bedingte Anweisungen    Ermöglichen eine komplexere Ausführung der Programmlogik mit Unterstützung für geschachteltes "Wenn"/"Sonst"/"Sonst Wenn".

  • Wiederverwendung von Makros    Im Aktionskatalog werden andere von Ihnen erstellte Makros angezeigt, damit Sie Teile in das Makro kopieren können, an dem Sie arbeiten.

  • Vereinfachte Freigabe    Kopieren Sie ein Makro, und fügen Sie es dann als XML-Code in eine E-Mail, einen Post in einer Newsgroup, einen Blog oder eine Website mit Codebeispielen ein.

Seitenanfang

Erstellen eines eigenständigen Makros

Bei diesem Vorgang wird ein eigenständiges Makroobjekt erstellt, das im Navigationsbereich unter Makros angezeigt wird. Eigenständige Makros sind nützlich, wenn das Makro an verschiedenen Stellen der Anwendung verwendet werden soll. Durch Aufrufen des Makros aus anderen Makros kann ein Duplizieren des gleichen Makrocodes an mehreren Stellen umgangen werden.

  1. Klicken Sie auf der Registerkarte Erstellen in der Gruppe Makros und Code auf Makro.

    Der Makro-Generator wird in Access geöffnet.

  2. Klicken Sie auf der Symbolleiste für den Schnellzugriff auf Speichern.

  3. Geben Sie im Dialogfeld Speichern unter einen Namen für das Makro ein, und klicken Sie dann auf "OK".

  4. Fahren Sie mit dem Abschnitt Hinzufügen von Aktionen zu einem Makro fort.

Seitenanfang

Erstellen eines eingebetteten Makros

Bei diesem Vorgang wird ein Makro erstellt, das in eine Ereigniseigenschaft eines Objekts eingebettet ist. Ein Makro dieses Typs wird nicht im Navigationsbereich angezeigt, es kann jedoch von Ereignissen, wie etwa Beim Laden oder Beim Klicken, aufgerufen werden.

Da das Makro zu einem Bestandteil des Formular- oder Berichtsobjekts wird, empfehlen sich eingebettete Makros für die Automatisierung von Aufgaben, die für ein bestimmtes Formular oder einen bestimmten Bericht spezifisch sind.

  1. Klicken Sie im Navigationsbereich mit der rechten Maustaste auf das Formular oder den Bericht, das bzw. der das Makro enthalten soll, und klicken Sie dann auf Layoutansicht.

  2. Wenn das Eigenschaftenblatt noch nicht angezeigt wird, drücken Sie F4, um es anzuzeigen.

  3. Klicken Sie auf das Steuerelement oder den Abschnitt, das bzw. der die Ereigniseigenschaft enthält, in die Sie das Makro einbetten möchten. Sie können das Steuerelement oder den Abschnitt (oder das gesamte Formular bzw. den gesamten Bericht) auch mithilfe der Dropdownliste unter Auswahltyp am oberen Rand des Eigenschaftenblatts auswählen.

  4. Klicken Sie im Aufgabenbereich "Eigenschaftenblatt" auf die Registerkarte Ereignis.

  5. Klicken Sie auf das Eigenschaftenfeld für das Ereignis, von dem das Makro ausgelöst werden soll. Wenn beispielsweise ein Makro für eine Befehlsschaltfläche ausgeführt werden soll, wenn auf die Schaltfläche geklickt wird, klicken Sie auf das Eigenschaftenfeld Beim Klicken.

  6. Wenn das Eigenschaftenfeld die Wörter [Eingebettetes Makro] enthält, bedeutet dies, dass für dieses Ereignis bereits ein Makro erstellt wurde. Sie können das Makro bearbeiten, indem Sie mit den verbleibenden Schritten dieses Vorgangs fortfahren.

  7. Wenn das Eigenschaftenfeld das Wort [Ereignisprozedur] enthält, bedeutet dies, dass für dieses Ereignis bereits eine VBA-Prozedur (Visual Basic for Applications) erstellt wurde. Vor dem Einbetten eines Makros im Ereignis muss die Prozedur entfernt werden. Sie können zu diesem Zweck das Wort [Ereignisprozedur] löschen, doch sollten Sie zuerst die Ereignisprozedur überprüfen und sicherstellen, dass durch das Entfernen keine erforderliche Funktionalität in der Datenbank außer Kraft gesetzt wird. In einigen Fällen kann die Funktionalität der VBA-Prozedur durch Verwenden eines eingebetteten Makros neu erstellt werden.

  8. Klicken Sie auf die Schaltfläche Erstellen Schaltflächensymbol .

  9. Wenn das Dialogfeld Generator auswählen angezeigt wird, vergewissern Sie sich, dass Makro-Generator ausgewählt ist, und klicken Sie dann auf OK.

    Der Makro-Generator wird in Access geöffnet. Fahren Sie mit dem nächsten Abschnitt fort, um dem Makro Aktionen hinzuzufügen.

Seitenanfang

Hinzufügen von Aktionen zu einem Makro

Aktionen sind einzelne Befehle, aus denen sich ein Makro zusammensetzt, und jeder Befehl ist nach der Aktion benannt, die er ausführt, z. B. SuchenDatensatz oder SchließenDatenbank.

Schritt 1: Suchen nach einer Makroaktion

Der erste Schritt beim Hinzufügen einer Aktion besteht darin, sie in der Dropdownliste Neue Aktion hinzufügen oder im Aktionskatalog zu suchen.

Hinweise : 

  • Standardmäßig werden in der Dropdownliste Neue Aktion hinzufügen und im Aktionskatalog nur Aktionen angezeigt, die in nicht vertrauenswürdigen Datenbanken ausgeführt werden können. Gehen Sie wie folgt vor, um alle Aktionen anzuzeigen:

    • Klicken Sie auf der Registerkarte Entwurf in der Gruppe Einblenden/Ausblenden auf Alle Aktionen anzeigen.

  • Falls der Aktionskatalog nicht angezeigt wird, klicken Sie auf der Registerkarte Entwurf in der Gruppe Einblenden/Ausblenden auf Aktionskatalog.

Verwenden Sie eine der folgenden Methoden, um nach einer Aktion zu suchen:

  • Klicken Sie auf den Pfeil in der Dropdownliste Neue Aktion hinzufügen, und scrollen Sie nach unten, um nach der Aktion zu suchen. Programmablaufelemente sind zuerst aufgeführt, und anschließend sind die Makroaktionen alphabetisch aufgelistet.

  • Suchen Sie im Bereich "Aktionskatalog" nach der Aktion. Die Aktionen sind nach Kategorien gruppiert. Erweitern Sie alle Kategorien, um die Aktionen anzuzeigen. Wenn Sie eine Aktion auswählen, wird unten im Aktionskatalog eine Kurzbeschreibung der Aktion angezeigt.

  • Suchen Sie im Bereich "Aktionskatalog" durch Eingabe im Suchfeld oben im Bereich nach der Aktion. Während der Eingabe wird die Liste der Aktionen gefiltert und zeigt alle Makros an, die den betreffenden Text enthalten. Access durchsucht sowohl die Makronamen als auch deren Beschreibungen nach dem eingegebenen Text.

Schritt 2: Hinzufügen einer Aktion zu einem Makro

Nachdem Sie die gewünschte Makroaktion gefunden haben, fügen Sie sie dem Makro mithilfe einer der folgenden Methoden hinzu:

  • Wählen Sie in der Liste Neue Aktion hinzufügen eine Aktion aus, oder beginnen Sie einfach mit der Eingabe des Aktionsnamens im Feld. Access fügt die Aktion an der Position hinzu, an der die Liste Neue Aktion hinzufügen angezeigt wurde.

  • Ziehen Sie die Aktion aus dem Aktionskatalog in den Makrobereich. Eine Einfügemarke zeigt an, wo die Aktion beim Loslassen der Maustaste eingefügt wird.

  • Doppelklicken Sie im Aktionskatalog auf die Aktion.

    • Wenn im Makrobereich eine Aktion ausgewählt ist, fügt Access die neue Aktion unmittelbar unterhalb der ausgewählten Aktion ein.

    • Wenn ein Block Gruppe, Wenn, Sonst Wenn, Sonst oder Untermakro im Makrobereich ausgewählt ist, fügt Access die neue Aktion dem betreffenden Block hinzu.

    • Wenn im Makrobereich keine Aktion oder kein Block ausgewählt ist, fügt Access die neue Aktion am Ende des Makros hinzu.

      Hinweise : 

      • Wenn Sie bereits ein oder mehrere Makros erstellt haben, sind diese im Aktionskatalog unter dem Knoten In dieser Datenbank aufgelistet.

        • Durch Ziehen eines eigenständigen Makros (ein Makro, das unter Makros aufgelistet ist) in den Makrobereich wird eine Aktion AusführenMakro erstellt, die das hineingezogene Makro ausführt. Anschließend kann die Dropdownliste zum Aufrufen von Untermakros verwendet werden, sofern diese vorhanden sind.

        • Wenn Sie lediglich die Aktionen aus einem eigenständigen Makro in das aktuelle Makro kopieren möchten (statt eine Aktion AusführenMakro zu erstellen), klicken Sie im Aktionskatalog mit der rechten Maustaste darauf, und klicken Sie dann auf Kopie des Makros hinzufügen.

        • Durch Ziehen eines eingebetteten Makros (ein Makro, das unter einem Formular- oder Berichtsobjekt aufgelistet ist) in den Makrobereich werden die Aktionen aus dem betreffenden Makro in das aktuelle Makro kopiert.

      • Sie können eine Aktion auch erstellen, indem Sie ein Datenbankobjekt aus dem Navigationsbereich in den Makrobereich ziehen. Wenn Sie eine Tabelle, eine Abfrage, ein Formular, einen Bericht oder ein Modul in den Makrobereich ziehen, fügt Access eine Aktion hinzu, mit der die Tabelle, die Abfrage, das Formular oder der Bericht geöffnet wird. Wenn Sie ein anderes Makro in den Makrobereich ziehen, fügt Access eine Aktion hinzu, mit der das Makro ausgeführt wird.

Schritt 3: Angeben von Argumenten

Die meisten Makroaktionen erfordern mindestens ein Argument. Sie können zu jedem Argument eine Beschreibung anzeigen, indem Sie die Aktion auswählen und dann den Mauszeiger über die Argumente bewegen. Für viele Argumente kann ein Wert aus einer Dropdownliste ausgewählt werden. Wenn für das Argument die Eingabe eines Ausdrucks erforderlich ist, unterstützt Sie IntelliSense beim Eingeben des Ausdrucks durch das Vorschlagen möglicher Werte während der Eingabe, wie es in der folgenden Abbildung dargestellt ist:

Verwenden von IntelliSense zum Eingeben eines Ausdrucks

Wenn Sie einen gewünschten Wert sehen, fügen Sie ihn zum Ausdruck hinzu, indem Sie darauf doppelklicken oder ihn mithilfe der Pfeiltasten markieren und anschließend die TAB- oder EINGABETASTE drücken.

Weitere Informationen zum Erstellen von Ausdrücken finden Sie im Artikel Einführung in Ausdrücke.

Informationen zur Verwendung von IntelliSense in Verbindung mit Eigenschaften in Webdatenbanken

Wenn Sie ein eingebettetes Benutzeroberflächenmakro in einem mit dem Web kompatiblen Formular erstellen, ermöglicht IntelliSense das Hinzufügen einer beliebigen Formulareigenschaft zu einem Ausdruck. In einer Webdatenbank kann mit Benutzeroberflächenmakros jedoch nur auf eine Untermenge von Formulareigenschaften zugegriffen werden. So ermöglicht IntelliSense beispielsweise bei Vorhandensein eines Steuerelements mit dem Namen "Steuerelement1" auf einem Formular mit dem Namen "Formular1", dass Sie dem Ausdruck in einem Benutzeroberflächenmakro "[Formulare]![Formular1]![Steuerelement1].[Steuerelementinhalt]" hinzufügen. Wenn Sie die Datenbank dann in Access Services veröffentlichen, erzeugt das Makro, das den Ausdruck enthält, jedoch einen Fehler, wenn es auf dem Server ausgeführt wird.

Die folgende Tabelle enthält die Eigenschaften, die Sie in Benutzeroberflächenmakros in Webdatenbanken verwenden können:

Objekt oder Steuerelement

Eigenschaften, die verwendet werden können

Formular

Beschriftung, Geändert, AnfügenZulassen, LöschenZulassen, BearbeitungenZulassen

Registersteuerelement

Sichtbar

Beschriftung

Beschriftung, Sichtbar, Vordergrundfarbe, Hintergrundfarbe

Anlage

Sichtbar, Aktiviert

Befehlsschaltfläche

Beschriftung, Sichtbar, Aktiviert, Vordergrundfarbe

Textfeld

Aktiviert, Sichtbar, Gesperrt, Vordergrundfarbe, Hintergrundfarbe, Wert

Kontrollkästchen

Aktiviert, Sichtbar, Gesperrt, Wert

Bild

Sichtbar, Hintergrundfarbe

Kombinationsfeld

Aktiviert, Sichtbar, Gesperrt, Wert

Listenfeld

Aktiviert, Sichtbar, Gesperrt, Wert

Webbrowser

Sichtbar

Unterformular

Aktiviert, Sichtbar, Gesperrt

Navigationssteuerelement

Aktiviert, Sichtbar,

Verschieben einer Aktion

Aktionen werden in der Reihenfolge von der obersten zur untersten Position im Makro ausgeführt. Verwenden Sie eine der folgenden Methoden, um eine Aktion im Makro nach oben oder unten zu verschieben:

  • Ziehen Sie die Aktion nach oben oder unten an die gewünschte Position.

  • Wählen Sie die Aktion aus, und drücken Sie dann STRG+NACH-OBEN-TASTE oder STRG+NACH-UNTEN-TASTE.

  • Wählen Sie die Aktion aus, und klicken Sie dann rechts im Makrobereich auf den Pfeil Nach oben oder Nach unten.

Löschen einer Aktion

So löschen Sie eine Makroaktion

  • Wählen Sie die Aktion aus, und drücken Sie dann die ENTF-TASTE. Alternativ können Sie auch auf die Schaltfläche Löschen (X) rechts im Makrobereich klicken.

    Hinweise : 

    • Beim Löschen eines Aktionsblocks, wie etwa eines Wenn-Blocks oder eines Gruppe-Blocks, werden zugleich alle Aktionen im Block gelöscht

    • Die Befehle Nach oben, Nach unten und Löschen stehen auch im Kontextmenü zur Verfügung, das beim Klicken mit der rechten Maustaste auf eine Makroaktion angezeigt wird.

Seitenanfang

Steuern des Programmablaufs mit "Wenn", "Sonst Wenn" und "Sonst"

Wenn Makroaktionen nur ausgeführt werden sollen, wenn bestimmte Bedingungen erfüllt sind, verwenden Sie einen Wenn-Block. Dies stellt den Ersatz für die Spalte Bedingung dar, die in früheren Versionen von Access verwendet wurde. Sie können einen Wenn-Block durch Sonst Wenn- und Sonst-Blöcke erweitern, ähnlich wie in anderen sequenziellen Programmiersprachen wie VBA.

Die folgende Abbildung zeigt einen einfachen Wenn-Block, einschließlich Sonst Wenn- und Sonst-Blöcken:

Ein Makro, eine „Wenn/Sonst Wenn/Sonst“-Anweisung enthält.

Der Wenn-Block wird ausgeführt, wenn der Wert des Felds "Ablaufdatum" kleiner als das aktuelle Datum ist.

Der Sonst Wenn-Block wird ausgeführt, wenn der Wert des Felds "Ablaufdatum" gleich dem aktuellen Datum ist.

Der Sonst-Block wird ausgeführt, wenn keiner der vorhergehenden Blöcke ausgeführt wird.

Die Wenn-Block endet hier.

Hinzufügen eines "Wenn"-Blocks zu einem Makro

  1. Wählen Sie in der Dropdownliste Neue Aktion hinzufügen den Wert Wenn aus, oder ziehen Sie ihn aus dem Bereich "Aktionskatalog" in den Makrobereich.

  2. Geben Sie im Feld oben im Wenn-Block einen Ausdruck ein, der bestimmt, wann der Block ausgeführt wird. Der Ausdruck muss boolesch sein (also entweder zu "Ja" oder "Nein" ausgewertet werden).

  3. Fügen Sie dem Wenn-Block Aktionen hinzu, indem Sie sie aus der Dropdownliste Neue Aktion hinzufügen, die im Block angezeigt wird, auswählen oder sie aus dem Bereich "Aktionskatalog" in den Wenn-Block ziehen.

Hinzufügen von "Sonst"- oder "Sonst Wenn"-Blöcken zu einem Makro

  1. Wählen Sie den Wenn -Block aus, und klicken Sie dann in der unteren rechten Ecke des Blocks auf Sonst hinzufügen oder Sonst Wenn hinzufügen.

  2. Geben Sie beim Hinzufügen eines Sonst Wenn-Blocks einen Ausdruck ein, der bestimmt, wann der Block ausgeführt werden soll. Der Ausdruck muss boolesch sein (also entweder zu "Wahr" oder "Falsch" ausgewertet werden).

  3. Fügen Sie dem Sonst Wenn- oder Sonst-Block Aktionen hinzu, indem Sie sie aus der Dropdownliste Neue Aktion hinzufügen, die im Block angezeigt wird, auswählen oder sie aus dem Bereich "Aktionskatalog" in den Block ziehen.

    Hinweise : 

    • Die Befehle zum Hinzufügen von Wenn-, Sonst Wenn- und Sonst-Blöcken stehen im Kontextmenü zur Verfügung, das beim Klicken mit der rechten Maustaste auf eine Makroaktion angezeigt wird.

    • Wenn-Blöcke können bis zu 10 Ebenen tief geschachtelt werden.

Seitenanfang

Erstellen von Untermakros

Jedes Makro kann mehrere Untermakros enthalten. Ein Untermakro wird so entworfen, dass es anhand des Namens aus den Makroaktionen AusführenMakro oder BeiFehler aufgerufen wird.

Ein Untermakro-Block wird einem Makro auf gleiche Weise wie eine Makroaktion hinzugefügt, wie es im Abschnitt Hinzufügen von Aktionen zu einem Makro beschrieben ist. Nach dem Hinzufügen eines Untermakro-Blocks können Makroaktionen dorthin gezogen oder Aktionen aus der im Block angezeigten Liste Neue Aktion hinzufügen ausgewählt werden.

Hinweise : 

  • Ein Untermakro-Block kann außerdem durch Auswählen einer oder mehrerer Aktionen, anschließendes Klicken mit der rechten Maustaste und Auswählen von Untermakroblock erstellen erstellt werden.

  • Untermakros müssen immer die letzten Blöcke in einem Makro darstellen. Nach einem Untermakro können keine Aktionen (mit Ausnahme weiterer Untermakros) hinzugefügt werden. Wenn Sie ein Makro ausführen, das nur Untermakros enthält, den Namen des gewünschten Untermakros aber nicht angeben, wird nur das erste Untermakro ausgeführt.

  • Verwenden Sie die folgende Syntax zum Aufrufen eines Untermakros (z. B. in einer Ereigniseigenschaft oder mithilfe der Aktion AusführenMakro oder BeiFehler):

    Makroname.Untermakroname

Seitenanfang

Gruppieren von verwandten Aktionen

Sie können die Lesbarkeit eines Makros verbessern, indem Sie Aktionen gruppieren und der Gruppe einen aussagekräftigen Namen zuweisen. Beispielsweise können Sie Aktionen zum Öffnen und Filtern eines Formulars in einer Gruppe mit dem Namen "Formular öffnen und filtern" zusammenfassen. Dadurch ist leichter ersichtlich, welche Aktionen in Beziehung zueinander stehen. Ein Block Gruppe wirkt sich nicht auf die Ausführung von Aktionen aus, und die Gruppe kann nicht einzeln aufgerufen oder ausgeführt werden. Ihr hauptsächlicher Zweck besteht darin, eine Gruppe von Aktionen zu benennen, damit das Makro beim Lesen leichter zu verstehen ist. Darüber hinaus lässt sich beim Bearbeiten eines umfangreichen Makros jeder Gruppenblock auf eine einzelne Zeile reduzieren, wodurch weniger gescrollt werden muss.

Wenn sich die zu gruppierenden Aktionen bereits im Makro befinden, verwenden Sie dieses Verfahren, um sie einem Block Gruppe hinzuzufügen:

  1. Wählen Sie die zu gruppierenden Aktionen aus.

  2. Klicken Sie mit der rechten Maustaste auf die ausgewählten Aktionen, und klicken Sie dann auf Gruppenblock erstellen.

  3. Geben Sie im Feld oben im Block Gruppe einen Namen für die Gruppe ein.

Wenn die Aktionen noch nicht vorhanden sind:

  1. Ziehen Sie den Block Gruppe aus dem Aktionskatalog in den Makrobereich.

  2. Geben Sie im Feld oben im Block Gruppe einen Namen für die Gruppe ein.

  3. Ziehen Sie Makroaktionen aus dem Aktionskatalog in den Block Gruppe, oder wählen Sie Aktionen aus der Liste Neue Aktion hinzufügen aus, die im Block angezeigt wird.

Gruppe-Blöcke können weitere Gruppe-Blöcke enthalten und bis zu 9 Ebenen tief geschachtelt sein.

Seitenanfang

Erweitern und Reduzieren von Makroaktionen oder Blöcken

Beim Erstellen eines neuen Makros zeigt der Makro-Generator Makroaktionen so an, dass alle Argumente sichtbar sind. Je nach Größe des Makros kann es sinnvoll sein, die Makroaktionen (und Aktionsblöcke) beim Bearbeiten des Makros insgesamt oder teilweise zu reduzieren. Dies ermöglicht einen besseren Gesamtüberblick über die Struktur des Makros. Die Aktionen können für die Bearbeitung insgesamt oder einzeln nach Bedarf erweitert werden.

Erweitern oder Reduzieren einer einzelnen Makroaktion oder eines Makroblocks

  • Klicken Sie auf das Plus- (+) oder Minuszeichen (-) links neben dem Namen des Makros oder Blocks. Alternativ können Sie die NACH-OBEN- und NACH-UNTEN-TASTE zum Auswählen einer Aktion oder eines Blocks und dann die NACH-LINKS- oder NACH-RECHTS-TASTE verwenden, um die Aktion oder den Block zu reduzieren bzw. zu erweitern.

Erweitern oder Reduzieren aller Makroaktionen (jedoch keiner Blöcke)

  • Klicken Sie auf der Registerkarte Entwurf in der Gruppe Reduzieren/Erweitern auf Aktionen erweitern oder Aktionen reduzieren.

Erweitern oder Reduzieren aller Makroaktionen und -blöcke

  • Klicken Sie auf der Registerkarte Entwurf in der Gruppe Reduzieren/Erweitern auf Alle erweitern oder Alle reduzieren.

Tipp :  Sie können in eine reduzierte Aktion "spähen", indem Sie den Mauszeiger über die Aktion bewegen. Access zeigt dann die Aktionsargumente in einer QuickInfo an.

Seitenanfang

Kopieren und Einfügen von Makroaktionen

Wenn Sie Aktionen wiederholen müssen, die Sie bereits einem Makro hinzugefügt haben, können Sie die vorhandenen Aktionen kopieren und einfügen, ähnlich wie bei Textabschnitten in einem Textverarbeitungsprogramm. Beim Einfügen werden Aktionen unmittelbar unterhalb der aktuell ausgewählten Aktion platziert. Wenn ein Block ausgewählt ist, werden die Aktionen innerhalb des Blocks eingefügt.

Tipp :  Zum schnellen Duplizieren ausgewählter Aktionen halten Sie die STRG-Taste gedrückt und ziehen die Aktionen an die Position im Makro, an die Sie sie kopieren möchten.

Freigeben eines Makros für andere

Wenn Makroaktionen in die Zwischenablage kopiert werden, können sie als XML-Code (Extensible Markup Language) in jede Anwendung eingefügt werden, die Texteingaben akzeptiert. Auf diese Weise können Sie ein Makro per E-Mail an einen Kollegen senden oder es in einem Diskussionsforum, in einem Blog oder auf einer anderen Website posten. Der Empfänger kann dann den XML-Code kopieren und ihn in den Access 2010-Makro-Generator einfügen. Das Makro wird genau so, wie Sie es geschrieben haben, neu erstellt.

Ausführen eines Makros

Ein Makro kann mit einer der folgenden Methoden ausgeführt werden:

  • Doppelklicken Sie im Navigationsbereich auf das Makro.

  • Rufen Sie das Makro mithilfe der Makroaktion AusführenMakro oder BeiFehler auf.

  • Geben Sie den Makronamen in einer Ereigniseigenschaft eines Objekts ein. Das Makro wird ausgeführt, wenn dieses Ereignis ausgelöst wird.

Seitenanfang

Debuggen eines Makros

Wenn bei der Ausführung eines Makros Probleme auftreten, stehen verschiedene Tools zur Verfügung, mit denen die Ursache des Problems ermittelt werden kann.

Hinzufügen von Aktionen zur Fehlerbehandlung zu einem Makro

Es wird empfohlen, jedem Makro beim Erstellen Aktionen zur Fehlerbehandlung hinzuzufügen und diese dauerhaft im Makro zu belassen. Wenn Sie diese Methode verwenden, zeigt Access beim Auftreten von Fehlern Beschreibungen an. Die Fehlerbeschreibungen helfen Ihnen, den Fehler zu verstehen, sodass das Problem schneller behoben werden kann.

Verwenden Sie das folgende Verfahren, um einem Makro ein Untermakro zur Fehlerbehandlung hinzuzufügen:

  1. Öffnen Sie das Makro in der Entwurfsansicht.

  2. Wählen Sie unten im Makro in der Dropdownliste Neue Aktion hinzufügen den Befehl Untermakro aus.

  3. Geben Sie im Feld rechts neben dem Wort Untermakro einen Namen für das Untermakro ein, z. B. Fehlerhandler.

  4. Wählen Sie in der Dropdownliste Neue Aktion hinzufügen, die innerhalb des Blocks Untermakro angezeigt wird, die Makroaktion Meldungsfeld aus.

  5. Geben Sie im Feld Meldung den folgenden Text ein: =[Makrofehler].[Beschreibung]

  6. Wählen Sie unten im Makro in der Dropdownliste Neue Aktion hinzufügen den Befehl BeiFehler aus.

  7. Legen Sie das Argument Gehe zu auf Makroname fest.

  8. Geben Sie im Feld Makroname den Namen des Untermakros zur Fehlerbehandlung (in diesem Beispiel Fehlerhandler) ein.

  9. Ziehen Sie die Makroaktion BeiFehler an die oberste Position des Makros.

Die folgende Abbildung zeigt ein Makro mit der Aktion BeiFehler und ein Untermakro mit dem Namen Fehlerhandler.

Ein Makro, das ein Untermakro zur Fehlerbehandlung enthält.

Die Makroaktion BeiFehler ist ganz oben im Makro platziert und ruft im Fehlerfall das Untermakro Fehlerhandler auf.

Das Untermakro Fehlerhandler wird nur ausgeführt, wenn es von der Aktion BeiFehler aufgerufen wird, und zeigt ein Meldungsfeld mit einer Fehlerbeschreibung an.

Verwenden des Befehls "Einzelschritt"

"Einzelschritt" ist ein Debugmodus für Makros, mit dem Makroaktionen jeweils einzeln nacheinander ausgeführt werden können. Nach jeder ausgeführten Aktion wird ein Dialogfeld angezeigt, das Informationen zur Aktion und alle zurückgegebenen Fehlercodes enthält. Da im Dialogfeld "Einzelschritt" jedoch keine Beschreibung des Fehlers zur Verfügung steht, wird die im vorhergehenden Abschnitt beschriebene Methode mit einem Untermakro zur Fehlerbehandlung empfohlen.

So starten Sie den Einzelschrittmodus

  1. Öffnen Sie das Makro in der Entwurfsansicht.

  2. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Tools auf Einzelschritt.

  3. Speichern und schließen Sie das Makro.

Beim nächsten Ausführen des Makros wird das Dialogfeld Einzelschritt angezeigt. Das Dialogfeld zeigt zu jeder Aktion die folgenden Informationen an:

  • Makroname

  • Bedingung (für "Wenn"-Blöcke)

  • Aktionsname

  • Argumente

  • Fehlernummer (die Fehlernummer 0 bedeutet, dass keine Fehler aufgetreten sind)

Klicken Sie beim schrittweisen Durchlaufen der Aktionen auf eine der drei Schaltflächen im Dialogfeld:

  • Zum Anzeigen von Informationen zur nächsten Aktion im Makro klicken Sie auf Schritt.

  • Zum Beenden aller aktuell ausgeführten Makros klicken Sie auf Alle Makros anhalten. Der Einzelschrittmodus ist bei der nächsten Ausführung eines Makros immer noch aktiv.

  • Zum Beenden des Einzelschrittmodus und Fortsetzen der Makroausführung klicken Sie auf Weiter.

    Hinweise : 

    • Wenn Sie nach der letzten Aktion in einem Makro auf Schritt klicken, ist der Einzelschrittmodus bei der nächsten Ausführung eines Makros immer noch aktiv.

    • Zum Aufrufen des Einzelschrittmodus während der Makroausführung drücken Sie STRG+UNTBR.

    • Zum Aufrufen des Einzelschrittmodus an einem bestimmten Punkt im Makro fügen Sie an diesem Punkt die Makroaktion Einzelschritt hinzu.

    • Der Einzelschrittmodus ist in Webdatenbanken nicht verfügbar.

Seitenanfang

Konvertieren eines Makros in VBA-Code

Makros stellen eine Teilmenge der in der Programmiersprache VBA (Visual Basic for Applications) verfügbaren Befehle bereit. Wenn Sie feststellen, dass Sie Funktionalität benötigen, die über die in Makros bereitstehenden Funktionen hinausgehen, können Sie ein eigenständiges Makroobjekt auf einfache Weise in VBA-Code konvertieren und dann die erweiterten Funktionen von VBA nutzen. Bedenken Sie dabei jedoch, dass VBA-Code nicht im Browser ausgeführt werden kann. VBA-Code, den Sie einer Webdatenbank hinzufügen, wird nur ausgeführt, während die Datenbank in Access geöffnet ist.

Hinweis :  Eingebettete Makros können nicht in VBA-Code konvertiert werden.

So konvertieren Sie ein Makro in VBA-Code

  1. Klicken Sie im Navigationsbereich mit der rechten Maustaste auf das Makroobjekt, und klicken Sie dann auf "Entwurfsansicht".

  2. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Tools auf Makros in Visual Basic konvertieren.

  3. Geben Sie im Dialogfeld Makro konvertieren an, ob Sie dem VBA-Modul Code zur Fehlerbehandlung und Kommentare hinzufügen möchten, und klicken Sie dann auf Konvertieren.

Access bestätigt, dass das Makro konvertiert wurde, und öffnet den Visual Basic-Editor. Doppelklicken Sie im Projektbereich auf das konvertierte Makro, um das Modul anzuzeigen und zu bearbeiten.

Seitenanfang

Hinweis : Haftungsausschluss für maschinelle Übersetzungen: Dieser Artikel wurde mithilfe eines Computersystems und ohne jegliche Bearbeitung durch Personen übersetzt. Microsoft bietet solche maschinellen Übersetzungen als Hilfestellung für Benutzer ohne Englischkenntnisse an, damit Sie von den Informationen zu Produkten, Diensten und Technologien von Microsoft profitieren können. Da es sich bei diesem Artikel um eine maschinelle Übersetzung handelt, enthält er möglicherweise Fehler in Bezug auf (Fach-)Terminologie, Syntax und/oder Grammatik.

Teilen Facebook Facebook Twitter Twitter E-Mail E-Mail

War diese Information hilfreich?

Sehr gut. Noch anderes Feedback?

Was können wir verbessern?

Vielen Dank für Ihr Feedback!

×