1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Prozeduraufruf aus Prozedur bzw. Makro

Discussion in 'Office-Programme' started by bnbre, Jan 15, 2010.

Thread Status:
Not open for further replies.
  1. bnbre

    bnbre Byte

    Hallo lb Accessianer,
    ich benötig Hilfe zu folgendem Problem:
    Der übersichtshalber habe ich, eine größere Access 97 VB Prozedur, auf mehrere Prozeduren – Ereignisprozeduren – aufgeteilt und habe nun das Problem diese automatisch, nacheinander
    ausführen zu lassen.
    Ich bitte um euere Hilfe und bin für jede Nachricht dankbar
    k. brecht
     
  2. Urs2

    Urs2 Megabyte

    Access besitze ich zwar nicht, aber die Prinzipien von VBA müssen wohl überall die gleichen sein...

    Mache ein Sub, als "Chef" der ganzen Programmteile...
    ...mit den Aufrufen der Unter-Subs oder -Functions in der gewünschten Reihenfolge >

    Sub ChefDesGanzen()
    NameProzedurBeta
    NameProzedurGamma
    NameProzedurZeta
    NameProzedurAlpha
    End Sub

    Wenn Argumente mitgegeben werden sollen, dann >>> NameProzedurBeta Arg1, Arg2, Arg3
    So wird eine Unter-Prozedur nach der anderen abgearbeitet...

    Oder... lass die letzte Zeile im Code einer Unterprozedur die nächste Unterprozedur aufrufen,
    >>> das ist aber sehr mühsam zum Nachvollziehen und fehlerträchtig zum Korrigieren.

    Gruss Urs
     
  3. Hascheff

    Hascheff Moderator

    Stimmt.

    Die einzelnen Prozeduren werden ja wohl im gleichen Modul liegen!
     
  4. bnbre

    bnbre Byte

    Meine Prozeduren sind alle als Ereignisaufrufe im Formular hinterlegt,
    Ich werde nun versuchen diese in einem Modul unterzubringen.
    Vorab vielen Dank
     
  5. bnbre

    bnbre Byte

    Meine Prozeduren sind alle als Ereignisaufrufe im Formular hinterlegt,
    Ich werde nun versuchen diese in einem Modul unterzubringen.
    Vorab vielen Dank
     
  6. Urs2

    Urs2 Megabyte

    ...so lange sie alle im gleichen Formular sind, funktioniert mein Vorschlag ohne Aenderung.

    Wenn Du sie schon verschoben hast, geht es auch.
    Mein Sub bleibt unverändert im Formular und ruft eine Unterprozedur nach der anderen im Modul auf.

    Vorteil im Formular >>> alles ist übersichtlich am gleichen Ort
    Vorteil im Modul >>> ein anderes Formular, im gleichen Projekt, kann die gleichen Unterprozeduren aufrufen.

    Gruss Urs
     
  7. Hascheff

    Hascheff Moderator

    Nein, nein, so war das nicht gemeint, lass sie im formulareigenen Modul.

    Das macht nichts, es muss trotzdem funktionieren.

    Gruß
    Hascheff

    Edit:
    Vorteil im Formular: Du weißt genau, wer Me ist.
    Vorteil im Modul: Me ist variabel.
     
    Last edited: Jan 19, 2010
  8. Urs2

    Urs2 Megabyte

    Richtig !
    Solange man im Modul keine Werte direkt aus dem Formular bezieht oder dort hinschreibt ist das belanglos, aber sonst >

    im Formular
    TextBox1 = "blabla" ....... schreibt ins Formular


    im Modul muss man den Namen des absendenden Formulars mitgeben,
    als globale Variable oder als Argument im Aufruf, als frmOrigin, definiert als >
    frmOrigin = Me

    und dann im Modul
    [frmOrigin].Textbox1 = "blabla" ........ schreibt auch ins Formular

    Gruss Urs
     
Thread Status:
Not open for further replies.

Share This Page