Gelöst Unsichtbares Formular aktualisieren (Excel VBA)

Dieser Thread ist Teil einer Diskussion zu einem Artikel:  Zum News-Artikel gehen

Fritz50

Stammgast
Guten Abend,
In dieser Anwendung möchte ich mit einem Formular einige Zellinhalte einer Zeile anzeigen. Wenn ich die Zeile (ein Datensatz) wechsle, ändere ich in einer Prozedur alle Inhalte der Textboxen. Ist ja soweit klar, eine lokale Prozedur. Dann kann ich das Formular auch ausblenden, mit Me.Hide damit die definierten Ranges nicht verloren gehen (ein Andreas wird sich an diese Diskussion erinnern). Später mache ich das Formular wieder sichtbar (UserForm1.Show). Und jetzt kommt mein Problem. Das Formular erscheint mit den alten Daten. Ich suche eine Lösung wie ich das Formular mit den neuen Daten öffnen kann (der Befehl ist ja wieder: UserForm1.show, ohne erneute Initialierung), oder es zumindest wie meine Prozedur Formular_aktualisieren von ‚aussen‘ aufrufen kann.

Die Ranges brauche ich im Tabellencode und im Formular und möchte diese nicht 2x definieren, u.a. auch wegen möglicher Änderungen der Tabelenstruktur.

P.S. Wenn ich die Prozedur in Modul global mache würde, müsste ich alle Textboxen auch global definieren, wenn das überhaupt geht.

Gruss
Fritz
 

Fritz50

Stammgast
Guten Morgen
Einmal darüber schlafen kann auch helfen. Wahrscheinlich habe ich nicht alle Ereignisse für UserForm1 durchforstet. Jedenfalls ist mir heute UserForm Activate aufgefallen. Dieses Ereignis mit dem Aufruf der Prozedur löst mein Problem.

Beste Grüsse
Fritz
 
Oben