Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1048to1052
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
UserForm wiederholen > Schleife?!
18.02.2009 11:39:00
Lenni
Moin Excellianer!
Ich möchte ein UserForm in eine Schleife schicken. In diesem UserForm habe ich 3 Commandbutton (CB1-3).
  • CB1: "OK" ...schließt das UserForm und Werte aus diesem werden in eine Tabelle übertragen

  • CB2: "Abbrechen" ...macht genau das

  • CB3: "Weitere Einträge" ...genau hier haperts bei mir, mein VBA ist noch nicht so weit...

  • ...die gerade eingegebenen Werte sollen in ein Tabellenblatt übertragen werden, das UserForm aber stehen bleiben! Bis auf ein Objekt (MultiPage) sollen alle Einträge in allen anderen Objekten stehen bleiben.
    Der Click auf den CB3 soll beliebig wiederholt werden können usw. usw. usw....
    Das MultiPage-Objekt soll jeweils einfach immer auf 0 gesetzt werden.
    Ich bitte um Eure Hilfe! Vielen Dank!
    Viele Grüße aus dem hohen Norden!
    Lenni

    5
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Datum
    Anwender
    Anzeige
    AW: UserForm wiederholen > Schleife?!
    18.02.2009 12:14:00
    Renee
    Hi Lenni,
    Eine UF in eine Schleife schicken ist eine etwas verwirrende Ausdrucksweise, dein Problem zu beschreiben. Du möchtest doch sicher einfach gewisse Kontroll-Elemente neu initialisieren, wenn du die Schaltfläche CB3 drückst, also in etwa so:
    
    Private Sub CB3_Click()
    TextBox1.Value = ""     ' Zurücksetzen des Inhalts einer Textbox
    MultiPage1.Value = 0    ' Multipage auf Seite 1 setzen
    TextBox2.Value = "Neu"  ' Inhalt von Textbox2 auf Multipage 1 initialisieren
    End Sub
    


    GreetZ Renée

    AW: UserForm wiederholen > Schleife?!
    18.02.2009 12:35:00
    Lenni
    Danke für den Tip Renée! ...aber so einfach ist das nicht.
    Bei Click auf CB3 sollen natürlich alle Werte des UserForms in eine Tabelle übergeben werden. Dieses Ereignis ist aber in der Click-Routine des CB1 (!) ...und dort laufen auch noch "ein paar" Prüfungen ab.
    UND: Wenn ich mit Click auf CB3 einen Call-Aufruf an das Click-Ereignis von CB1 starte, dann wird nur 1x wiederholt...
    Es soll aber beliebig oft wiederholt werden und jeweils nur das MultiPage auf 0 gesetzt werden.
    Gruß
    Lenni

    Anzeige
    AW: UserForm wiederholen > Schleife?!
    18.02.2009 13:47:00
    Renee
    Hi Lenni,
    Wenn es nicht so einfach ist, dann mach es einfacher!
    Zitat: Dieses Ereignis ist aber in der Click-Routine des CB1 (!) ...und dort laufen auch noch "ein paar" Prüfungen ab.
    Diese Prüfungen, das Übergeben an die Tabelle und das re-initialisieren der Kontrollelemente muss ja nicht dort (CB1) hinterlegt sein.
    Lagere sie in eine eigene Subroutine (z.B. Sub Übergeben()) aus. Rufe dann in CB1_Click die Routine Übergeben auf. Anschliessend schliesst du die UserForm.
    Ebenso kannst Du sie jetzt in CB3 dein Übergeben Routine brauchen. Also nach dem Muster:
    
    Sub CB1_Klick()
    Übergeben
    Me.Hide
    End Sub
    Sub CB3_Klick()
    Übergeben
    End Sub
    Sub Übergeben()
    Prüfungen
    Übergeben von Werten an Tabelle
    Initialisierung von Kontrollelementen
    End Sub
    


    GreetZ Renée

    Anzeige
    AW: UserForm wiederholen > Schleife?!
    18.02.2009 17:55:00
    Lenni
    Danke Renée! ...ist ein logischer Gedanke und ich finde diese "Vereinfachung" auch klasse... ...aber dann laufen bei Click auf CB1 die Prüfungen nur 1x durch und dann wird das UserForm ohne Werte zu übergeben dicht gemacht.
    Trotzdem vielen Dank!
    Ich würde ja gerne eine Demo-Datei hochladen... ...aber meine Datei ist schon so groß...
    Gruß
    Lenni

    Danke Renée!! ...Lösung gefunden!
    19.02.2009 18:34:00
    Lenni
    Moin Renée!
    Ich wollte mich noch ganz herzlich bei Dir bedanken!! ...denn vom Grundsatz her waren Deine Lösungsvorschläge der richtige Weg!!!
    Ich habe Sie nur um einen kleinen Trick erweitert: Ich habe eine weitere TextBox in das UserForm gesetzt und deren Sichtbarkeit (Visible) auf "False" gesetzt.
    Gemäß Deinen Vorschlägen in Deinem letzten Beitrag habe ich meinen Gesamtcode "aufgesplittet" und kleine Anweisungen mit aufgenommen, die mir in die "versteckte" TextBox eine 1 oder 2 hinein schreiben. Mit Hilfe dieser beiden Zahlen kann ich nun im Sinne von If...Then...Else usw. gezielt steuern!
    Leider ist meine Datei zu groß, sonst hätte ich gerne ein Beispiel hochgeladen!
    Nochmals Vielen Dank Renée! ...Deine "Anschubser" waren der Weg zur Lösung!!
    Gruß
    Lenni

    Anzeige

    299 Forumthreads zu ähnlichen Themen

    Anzeige
    Anzeige
    Anzeige

    Links zu Excel-Dialogen

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige