Erstellen von benutzerdefinierten Menüs und Kontextmenüs mithilfe von Makros

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

Sie können mit Access-Makros eigene Kontextmenüs erstellen, die angezeigt werden, wenn Sie mit der rechten Maustaste auf Formulare, Berichte oder einzelne Steuerelemente klicken. Sie können auch eigene Menüs erstellen, die für bestimmte Formulare oder Berichte auf der Multifunktionsleiste angezeigt werden.

Führen Sie zum Erstellen eines Menüs mittels eines Makros die folgenden drei Schritte aus:

  1. Erstellen Sie eine Makrogruppe, welche die Menübefehle definiert.

  2. Erstellen Sie ein weiteres Makro, welches das Menü selbst erstellt.

  3. Weisen Sie das Menü einem Steuerelement, einem Formular, einem Bericht oder der gesamten Datenbank zu.

In den folgenden Abschnitten werden diese Schritte im Detail behandelt.

Schritt 1: Erstellen einer Makrogruppe, welche die Menübefehle enthält

In diesem Schritt erstellen Sie eine Makrogruppe, deren Makros als eigene Befehle in Ihrem Kontextmenü angezeigt werden.

Was ist eine Makrogruppe?

Eine Makrogruppe ist ein einzelnes Makroobjekt, das zwei oder mehrere unabhängige Makros enthält. Die einzelnen Makros werden bestimmt, indem in die Spalte "Makroname" ein Name für jedes Makro eingegeben wird. In der folgenden Abbildung ist Makro3 eine Makrogruppe. NichtGefundNachr und GefundNachr sind einzelne Makros in der Gruppe, die zwei Makroaktionen enthalten.

Beispiel einer Makrogruppe

Hinweis : Die Spalte Makroname ist standardmäßig ausgeblendet. Klicken Sie zum Einblenden der Spalte Makroname auf der Registerkarte Entwurf in der Gruppe Einblenden/Ausblenden auf Makroname.

  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.

  2. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Einblenden/Ausblenden auf Namen von Makros, um die Spalte Makroname anzuzeigen.

  3. Gehen Sie für jeden Befehl, den Ihr eigenes Kontextmenü enthalten soll, so vor:

    • Geben Sie in die Spalte Makroname den Text ein, der im Kontextmenü angezeigt werden soll (z. B. "Druckbericht" oder "Speichern").

      1. Hinweis : Geben Sie ein kaufmännisches UND-Zeichen (&) vor dem Buchstaben ein, der die Zugriffstaste im Befehlsnamen darstellen soll, um eine Zugriffstaste zu erstellen, über die Sie den Befehl mithilfe der Tastatur wählen können (z. B. "&Speichern"). Dieser Buchstabe wird im Menü unterstrichen dargestellt.

    • Wählen Sie in der Spalte Aktion die erste Aktion aus, die erfolgen soll, wenn auf den Befehl im Kontextmenü geklickt wird.

    • Wenn bei Auswahl dieses Befehls mehrere Aktionen erfolgen sollen, fügen Sie sie in den folgenden Zeilen hinzu. Lassen die Zelle Makroname für jede nachfolgende Aktion leer.

      1. Hinweis : Geben Sie in der Spalte Makroname einen Bindestrich (-) zwischen den entsprechenden Menübefehlen ein, um eine Verbindung zwischen zwei Menübefehlen zu erstellen.

  4. Speichern Sie und benennen Sie das Makro, z. B. McrShortcutMenuCommands.

Die folgende Abbildung zeigt ein Beispiel einer Makrogruppe für ein benutzerdefiniertes Menü bzw. Kontextmenü.

Eine Menümakrogruppe in der Entwurfsansicht

Schritt 2: Erstellen eines Makros, welches das Menü erstellt

Dieser Schritt möglicherweise überflüssige scheint, aber um das Kontextmenü aus der Makrogruppe zu erstellen, die Sie in Schritt 1 erstellt haben, müssen Sie ein zweites Makro, das enthält erstellen die HinzufügenMenü Makroaktion. Dieses Makro wird "Menümakro" bezeichnet.

  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.

  2. Wählen Sie in der ersten Zeile des Makros HinzufügenMenü in der Liste Aktion aus.

  3. Geben Sie unter Aktionsargumente in das Feld Menüname den Namen des Menüs ein (z. B. "Berichtsbefehle"). Dieses Argument ist nicht erforderlich, aber zu empfehlen, wenn Sie in Schritt 3 planen, das Menü einer Registerkarte auf der Multifunktionsleiste hinzuzufügen (z. B. der Registerkarte Add-Ins eines Formulars oder Berichts). Wird das Menü in Schritt 3 als Kontextmenü hinzugefügt, wird das Argument Menüname ignoriert.

  4. Geben Sie in das Feld Menümakroname den Namen des in Schritt 1 erstellten Makros ein.

  5. Speichern Sie und benennen Sie das Makro, z. B. McrAddShortcutMenu.

Die folgende Abbildung zeigt ein Beispiel eines Menümakros, welches das in Schritt 1 entworfene Makro erstellt.

Ein Menümakro in der Entwurfsansicht

Schritt 3: Zuweisen des Menüs zu einem Steuerelement, Formular, Bericht oder einer Datenbank

Je nachdem, wo das Menü angezeigt werden soll, befolgen Sie eine oder mehrere der folgenden Vorgehensweisen.

  • Hinzufügen des Menüs zur Registerkarte "Add-Ins" eines Formulars oder Berichts

    Gehen Sie wie folgt vor, wenn das Menü auf der Registerkarte Add-Ins eines bestimmten Formulars oder Berichts angezeigt werden soll (siehe die folgende Abbildung):

    Registerkarte 'Add-Ins' mit einem benutzerdefinierten Menü

    1. Klicken Sie im Navigationsbereich mit der rechten Maustaste auf das Formular oder den Bericht, in dem das Menü angezeigt werden soll, und klicken Sie dann auf Entwurfsansicht.

    2. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Einblenden/Ausblenden auf Eigenschaftenblatt.

    3. Wählen Sie das gesamte Objekt aus, indem Sie in der Liste oben im Aufgabenbereich "Eigenschaftenblatt" Formular oder Bericht auswählen.

    4. Geben Sie auf der Registerkarte Andere im Eigenschaftenblatt in das Eigenschaftenfeld Kontextmenü den Namen des in Schritt 2 erstellten Makros ein (in diesem Beispiel "mkrKontextmenüHinzufügen").

      Beim nächsten Öffnen des Formulars oder Berichts wird die Registerkarte Add-Ins angezeigt. Klicken Sie auf die Registerkarte, um das Menü anzuzeigen.

      Weitere Informationen zum Menüband Techniken für die Anpassung, wie etwa das Hinzufügen von benutzerdefinierten Registerkarten ein- oder Ausblenden der Standardregisterkarten finden Sie im Artikel Menüband anpassen.

      Die Multifunktionsleiste ist eine Komponente der Microsoft Office Fluent-Benutzeroberfläche.

  • Hinzufügen des Menüs als Kontextmenü für ein Formular, einen Bericht oder ein Steuerelement

    Gehen Sie wie folgt vor, wenn das Menü bei Klicken mit der rechten Maustaste auf ein bestimmtes Formulars oder Steuerelement bzw. einen bestimmten Bericht angezeigt werden soll (siehe die folgende Abbildung):

    Ein einfaches Kontextmenü

    1. Klicken Sie im Navigationsbereich mit der rechten Maustaste auf das Formular oder den Bericht, in dem das Kontextmenü angezeigt werden soll, und klicken Sie dann auf Entwurfsansicht.

    2. Klicken Sie auf der Registerkarte Entwurf in der Gruppe Einblenden/Ausblenden auf Eigenschaftenblatt.

    3. Wählen Sie das Steuerelement oder Objekt aus, dem das Kontextmenü zugewiesen werden soll.

      Hinweis : Sie wählen das gesamte Objekt aus, indem Sie in der Liste oben im Aufgabenbereich "Eigenschaftenblatt" Formular oder Bericht auswählen.

    4. Geben Sie auf der Registerkarte Andere im Eigenschaftenblatt in das Eigenschaftenfeld Kontextmenüleiste den Namen des in Schritt 2 erstellten Makros ein (in diesem Beispiel "mkrKontextmenüHinzufügen").

  • Hinzufügen des Menüs als globales Kontextmenü

    Über diesen Schritt werden alle Standardkontextmenüs in der aktuellen Datenbank ersetzt. Eigene Kontextmenüs, die Sie bestimmten Formularen, Berichten oder Steuerelementen zugewiesen haben, sind nicht betroffen.

    1. Klicken Sie auf der Microsoft Office-Schaltfläche Abbildung der Office-Schaltfläche , und klicken Sie dann auf Access-Optionen.

    2. Klicken Sie im Dialogfeld Access-Optionen auf Aktuelle Datenbank.

    3. Geben Sie unter Multifunktionsleisten- und Symbolleistenoptionen in das Feld Kontextmenüleiste den Namen des in Schritt 2 erstellten Makros ein (in diesem Beispiel "mkrKontextmenüHinzufügen").

Hinweis : 

  • Benutzerdefinierte Kontextmenüs ersetzen die Standardkontextmenüs für die Objekte, denen sie zugeordnet sind. Wählen Sie die Aktion AusführenBefehl zum Ablegen der Befehle in den Makrogruppen für die gewünschten Menüs, wenn Sie bestimmte, in den Menüs zu verwendende Access-Befehle beibehalten möchten.

  • Ein benutzerdefiniertes Kontextmenü, das einem Steuerelement zugewiesen ist, hat Vorrang vor allen anderen benutzerdefinierten Kontextmenüs, die in der Datenbank definiert sind. Ein benutzerdefiniertes Kontextmenü, das einem Formular oder Bericht zugewiesen ist, hat Vorrang vor einem benutzerdefinierten globalen Kontextmenü.

  • Wenn Sie ein Menümakro für ein Formular, einen Bericht oder die Datenbank angeben, wird dieses Menümakro in Access ausgeführt, wenn das Formular, der Bericht oder die Datenbank geöffnet wird. Wenn Sie am Menümakro oder an der Makrogruppe Änderungen zum Definieren der Befehle vornehmen, während das Formular, der Bericht oder die Datenbank geöffnet ist, müssen Sie das Formular, den Bericht oder die Datenbank schließen und dann erneut öffnen, damit die Änderungen angezeigt werden.

  • Befolgen Sie zum Erstellen eines Untermenü Schritt 1 zum Anlegen einer getrennten Makrogruppe, die nur die Untermenübefehle enthält. Befolgen Sie anschließend nochmals Schritt 1 zum Festlegen der Befehle für das übergeordnete Menü. Fügen Sie über die Makroaktion HinzufügenMenü der übergeordneten Makrogruppe das Untermenü als Element hinzu. Die folgende Abbildung zeigt die Makrogruppe eines Menüs mit einem Untermenü und anschließend das sich ergebende Kontextmenü. Die dritte Zeile in der Makrogruppe erstellt das Untermenü Exportieren in... (mkrUnterMenü).

    Ein Kontextmenü mit einem Untermenü

    Sie können mehrere Ebenen von Untermenüs erstellen, indem Sie für jede Ebene des Menüs HinzufügenMenü-Aktionen in den Makrogruppen verwenden. Sie müssen für jede Aktion vom Typ HinzufügenMenü ein Wert für das Argument Menüname angeben, da andernfalls das Untermenü als leere Zeile im übergeordneten Menü angezeigt wird.

  • Makrobedingungen werden nur im Menümakro der obersten Ebene unterstützt. Um zu ermitteln, ob ein bestimmtes Menü oder Kontextmenü auf der Registerkarte angezeigt wird, können Sie daher eine Bedingung in einem Menümakro verwenden. Dies ist jedoch nur für die Menüs in der obersten Ebene möglich. Sie können keine Bedingungen verwenden, um Befehle oder Untermenüs in den Menüs anzuzeigen oder auszublenden. Sie können eine Bedingung jedoch zum Anzeigen oder Ausblenden eines benutzerdefinierten Kontextmenüs oder eines globalen Kontextmenüs verwenden.

  • Optional kann das Menümakro, das Sie in Schritt2 Erstellen einer Makrogruppe gehören. Wenn Sie mehrere Kontextmenüs für verschiedene Objekte oder Steuerelemente verfügen, können Sie beispielsweise ein einziges Makroobjekt erstellen, die alle erforderlichen Menümakros enthält. Stellen Sie sicher, dass die Spalte Makroname anzuzeigen, und geben Sie einen eindeutigen Namen für jedes Makro. In Schritt 3, verwenden Sie die folgende Notation, um auf das Makro verweisen: Makrogruppenname.Makroname hinzu. Beispielsweise mcrAddShortcutMenus.AddMenu2.

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.

Ihre Fähigkeiten erweitern
Schulung erkunden
Neue Funktionen als Erster erhalten
An Office Insider teilnehmen

War diese Information hilfreich?

Vielen Dank für Ihr Feedback!

Vielen Dank für Ihr Feedback. Es klingt, als ob es hilfreich sein könnte, Sie mit einem unserer Office-Supportmitarbeiter zu verbinden.

×