Freigeben über


RunCode-Makroaktion

Gilt für: Access 2013, Office 2013

Sie können mit der Aktion AusführenCode eine Visual Basic for Applications (VBA)-Funktionsprozedur aufrufen.

Einstellung

Die AusführenCode-Aktion hat das folgende Argument.

Aktionsargument

Beschreibung

Funktionsname

Der Name der VBA-Funktionsprozedur, die aufgerufen werden soll. Geben Sie die gewünschten Funktionsargumente in Klammern an. Geben Sie den Funktionsnamenn im Feld Funktionsname im Abschnitt Aktionsargumente des Bereichs "Makro-Generator" ein. Dies ist ein erforderliches Argument.

HINWEIS: Klicken Sie in einer Access-Datenbank (.mdb oder ACCDB) auf die Schaltfläche Erstellen , um mithilfe des Ausdrucks-Generators eine Funktion für dieses Argument auszuwählen. Klicken Sie dazu im Ausdrucks-Generator auf die gewünschte Funktion in der Liste.

Hinweise

Die benutzerdefinierten Funktionen werden in Microsoft Access-Modulen gespeichert.

Sie müssen Klammern angeben, auch wenn die Funktion, wie im folgenden Beispiel, über keine Argumente verfügt.

TestFunction()

Im Gegensatz zu benutzerdefinierten Funktionsnamen für Ereigniseigenschafteneinstellungen, ist das erste Zeichen eines Funktionsnamens im Argument Funktionsname kein Gleichheitszeichen (=).

Access ignoriert den Rückgabewert der Funktion.

Hinweis

[!HINWEIS] Sie können eine Funktionsprozedur nicht mit einem Makro aufrufen, wenn der Funktionsname dem Modulnamen entspricht.

Tipp

[!TIPP] Um eine Sub- oder Ereignis-Prozedur in Visual Basic auszuführen, erstellen Sie eine Funktionsprozedur, die die entsprechende Sub- oder Ereignisprozedur aufruft. Führen Sie die Funktionsprozedur dann mit der Aktion AusführenCode aus.

Wenn Sie die Aktion RunCode verwenden, um eine Funktion aufzurufen, sucht Access in den Standardmodulen für die Datenbank nach der Funktion mit dem namen, der durch das Argument Funktionsname angegeben wird. Wenn diese Aktion jedoch als Reaktion auf einen Menübefehl in einem Formular oder Bericht oder als Reaktion auf ein Ereignis in einem Formular oder Bericht ausgeführt wird, sucht Access zuerst im Klassenmodul des Formulars oder Berichts und dann in den Standardmodulen nach der Funktion. Access durchsucht nicht die Klassenmodule, die im Bereich Module des Navigationsbereichs für die durch das Argument Funktionsname angegebene Funktion angezeigt werden.

Diese Aktion ist nicht in einem VBA-Modul verfügbar. Führen Sie die gewünschte Funktionsprozedur stattdessen direkt in VBA aus.