RunCode-Makroaktion
Sie können die RunCode -Makroaktion in Access-Desktopdatenbanken verwenden, um eine VBA-Funktionsprozedur (Visual Basic for Applications) aufzurufen.
Einstellung
Die Makroaktion RunCode hat das folgende Argument.
Handlungsargument | Beschreibung |
Funktionsname | Der Name der aufzurufenden VBA-Funktionsprozedur. Schließen Sie alle Funktionsargumente in Klammern ein. Geben Sie den Funktionsnamen in das Feld Funktionsname im Makroentwurfsfenster ein. Dies ist ein erforderliches Argument. Hinweis: Klicken Sie in einer Access-Desktopdatenbank (.mdb oder .accdb) auf die Schaltfläche Erstellen , um mit dem Ausdrucks-Generator eine Funktion für dieses Argument auszuwählen. Klicken Sie in der Liste im Ausdrucksgenerator auf die gewünschte Funktion. |
Bemerkungen
Die benutzerdefinierten Funktionsprozeduren werden in Access-Modulen gespeichert.
Sie müssen Klammern einfügen, auch wenn die Function-Prozedur keine Argumente hat, wie im folgenden Beispiel:
Testfunktion()
Im Gegensatz zu benutzerdefinierten Funktionsnamen, die für Ereigniseigenschafteneinstellungen verwendet werden, beginnt der Funktionsname im Argument Funktionsname nicht mit einem Gleichheitszeichen ( = ).
Access ignoriert den Rückgabewert der Funktion.
Hinweis: Sie können eine Function-Prozedur nicht aus einem Makro aufrufen, wenn der Funktionsname mit dem Modulnamen identisch ist.
Tipp
Um eine in Visual Basic geschriebene Sub-Prozedur oder Ereignisprozedur auszuführen, erstellen Sie eine Function-Prozedur, die die Sub-Prozedur oder Ereignisprozedur aufruft. Verwenden Sie dann die RunCode -Makroaktion, um die Function-Prozedur auszuführen.
Wenn Sie die Makroaktion RunCode verwenden, um eine Funktion aufzurufen, sucht Access nach der Funktion mit dem Namen, der durch das Argument Funktionsname in den Standardmodulen für die Datenbank angegeben ist. Wenn diese Aktion jedoch als Reaktion auf das Klicken 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 nach der Funktion im Klassenmodul des Formulars oder Berichts und dann in den Standardmodulen. Access durchsucht die Klassenmodule, die im Bereich Module des Navigationsbereichs angezeigt werden, nicht nach der durch das Argument Funktionsname angegebenen Funktion .
Diese Aktion ist in einem VBA-Modul nicht verfügbar. Führen Sie stattdessen die gewünschte Function-Prozedur direkt in VBA aus.
No comments:
Post a Comment