Hallo Heiko!
Ich weiß nicht, ob ich Dir helfen kann, will es aber mal versuchen. Der Tipp stammt aus meinem Access Berater und deshalb müßtest Du eigentlich etwas damit anfangen können. Ich selber habe leider noch keine erfahrungen mit VBA und kann deshalb nicht viel dazu sagen. Hier nun der Tipp:
Makros in VBA konvertieren
Makros lassen sich in Access schnell und ohne Programmierkenntnisse erstellen, aber sie eignen sich meist nur für einfache Aufgabenstellungen. Wenn Sie bestehende Makros erweitern wollen, stoßen Sie schnell an die Grenzen des Befehlsumfangs, so daß Sie auf VBA ausweichen müssen. Wenig bekannt ist die Tatsache, daß Sie die entsprechende Prozedur nicht komplett neu aufbauen müssen; mit den folgenden Schritten können Sie jedes Makro automatisch von Access in eine VBA-Prozedur umwandeln lassen:
Über das Kontextmenü starten Sie zunächst die Export-Funktion für Makromodule
1.) Wechseln Sie im Datenbank-Fenster auf die Registerkarte »Makros«, und klicken Sie mit der rechten Maustaste das Makromodul an, das konvertiert werden soll.
2.) Rufen Sie das Kontextmenü Speichern unter-Exportieren auf.
Der Export in ein Visual Basic-Modul startet die Konvertierung
3.) Aktivieren Sie die Option Als Visual Basic-Modul speichern, und bestätigen Sie mit Ok.
Aktivieren Sie beide Optionen, und bestätigen Sie das Dialogfeld mit Ok
4.) In einem Dialogfeld werden nun zwei Optionen zur Makrokonvertierung angezeigt; übernehmen Sie einfach die Vorgaben, und klicken Sie auf Konvertieren.
Konvertierung starten
Der Konvertierungsvorgang wird damit gestartet, und am Ende erhalten Sie ein neues VBA-Modul, das für jedes Makro eine Prozedur enthält. Zur Benennung verwendet Access automatisch die Einträge der Spalte »Namen« im Makrofenster. Auch alle Kommentare werden automatisch in entsprechende Anmerkungszeilen umgewandelt, so daß Sie sich in dem VBA-Code schnell zurechtfinden. Im übrigen setzt Access für jeden Makrobefehl die entsprechende DoCmd-Methode ein, wobei nicht in jedem Fall ein Äquivalent vorhanden ist. Diese Sonderfälle sind in der folgenden Tabelle aufgeführt:
So werden Makroaktionen konvertiert
Makroaktion: Konvertierung in: HinzufügenMenü
Keine Konvertierung! Die Zeilen werden auskommentiert, und Sie müssen eine manuelle Anpassung vornehmen.
Meldung MsgBox-Funktion
AusführenAnwendung Shell-Funktion
AusführenCode Call-Anweisung
StopAlleMakros End-Anweisung
StopMakro Exit-Anweisung
Ausdrücke in der Spalte »Bedingungen« If-Then / Else / End If - oder With-/End With-Konstruktionen
Mit freundlichen Grüßen Albert
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]