Supportnet / Forum / Datenbanken
VBA-Code ausführen unter Access
Frage
Hallo zusammen,
Bitte entschuldigt meine Frage aber ich komme mit dem Help und meinen Kenntnisssen nicht weiter.
Ich habe eine schöne VBA-Prozedur als Modul geschrieben, die mir Tabellen einliest, Texte extrahiert und neue Tabellen anlegt.
Wie kann ich die Verarbeitung über einen Befehl starten ohne, dass ich in die VBA-Umgebung gehen muss und über Prozedur aufrufen dies tun muss. Das Modul kann ich nicht über das Menu ausführen starten, da dies nicht eingeschaltet ist.
Besten Dank für Eure Hilfe und Gruss
Antwort 1 von firefox
Von wo aus soll die Prozedur denn gestartet werden?
Aus einer nackten mdb heraus, oder existieren bereits Formulare?
Entweder also per Button aus einem Form heraus, oder du baust ein Benutzermenü hinzu das die Funktion aufruft...
Aus einer nackten mdb heraus, oder existieren bereits Formulare?
Entweder also per Button aus einem Form heraus, oder du baust ein Benutzermenü hinzu das die Funktion aufruft...
Antwort 2 von yuna
Hallo,
Füge mal in dem Fenster in dem dein Code steht folgendes hinzu:
private sub main()
call name_deiner_Prozedur
end sub
Vielleicht funktioniert das so auch in Access VBA?
Mfg,
yuna
Füge mal in dem Fenster in dem dein Code steht folgendes hinzu:
private sub main()
call name_deiner_Prozedur
end sub
Vielleicht funktioniert das so auch in Access VBA?
Mfg,
yuna
Antwort 3 von Urs
Hallo Firefox,
Die Prozedur habe ich als Modul definiert. Es soll nur in der bestehenden MDB ausgeführt werden. Ich habe versucht via Befehlsschaltfläche im Formular das Modul aufzurufen. ich kann dort aber nirgends Modul angeben, sondern nur Makro!
Die Prozedur habe ich als Modul definiert. Es soll nur in der bestehenden MDB ausgeführt werden. Ich habe versucht via Befehlsschaltfläche im Formular das Modul aufzurufen. ich kann dort aber nirgends Modul angeben, sondern nur Makro!
Antwort 4 von firefox
Du kannst die Funktion auch nicht direkt im Designer angeben. Hier kannst du nur zwischen
Makro
und
Ereignisprozedur <-
wählen.
Wenn du Ereignisprozedur wählst, erscheint das VBA Fenster mit ungefähr folgendem Code:
hier gibts du den wie von yuna beschriebenen Code ein, sodaß
daraus wird.
Der Befehl "Call" ist optional, macht aber den Code in aller Regel übersichtlicher.
Das wars. Die Prozedur findet er dann schon selbst, ein Verweis auf das Modul ist nicht nötig.
Makro
und
Ereignisprozedur <-
wählen.
Wenn du Ereignisprozedur wählst, erscheint das VBA Fenster mit ungefähr folgendem Code:
Private Sub Button37_Click()
End Sub
hier gibts du den wie von yuna beschriebenen Code ein, sodaß
Private Sub Button37_Click()
call deine_prozedur
End Sub
daraus wird.
Der Befehl "Call" ist optional, macht aber den Code in aller Regel übersichtlicher.
Das wars. Die Prozedur findet er dann schon selbst, ein Verweis auf das Modul ist nicht nötig.
Antwort 5 von Urs
Hallo zusammen,
Hat bestens geklappt, besten Dank für Eure Hilfe.
Hat bestens geklappt, besten Dank für Eure Hilfe.

