Excel-Werte von einer UserForm übergeben
© sdecoret - Adobe Stock

Excel-Werte von einer UserForm übergeben

Wie Sie Excel-Daten aus einer UserForm pfiffig abfragen

Beim Einsatz von UserForms in Ihren VBA-Prozeduren gibt es immer wieder die Aufgabe, einen bestimmten Zustand oder eine Information in der UserForm zu speichern und sie anschließend in einem Modul abzufragen.

Ein Weg ist es, diese Informationen in einem Tabellenblatt des ausführenden Programms zwischenzuspeichern. Sie können aber auch eine andere Methode verwenden, die immer ohne Aufwand funktioniert.

Jede UserForm besitzt die Eigenschaft Tag. Dieser Eigenschaft können Sie auch einen Text zuweisen. So lange die UserForm nicht aus dem Speicher entladen ist, behält die Eigenschaft Tag ihren Wert.

Um Informationen von einer UserForm an eine VBA-Prozedur zu übertragen, speichern Sie im Programmcode der UserForm die Information in der Eigenschaft Tag ab:

Me.Tag="Mein Text"

In Ihrer Prozedur können Sie nun diese Eigenschaft direkt abfragen:

If UserForm1.Tag="Mein Text" Then ...

Achten Sie darauf, dass der Inhalt von Tag nur so lange erhalten bleibt, wie die UserForm im Speicher bleibt. Um die UserForm auszublenden, setzen Sie daher so lange nur die Methode Hide anstelle von Unload ein.