mtriebler
Goto Top

VBA Variable aus UserForm in anderes Modul übergeben.

Ich habe das Problem, daß die Public Variablen nach Verlassen der Userformn nicht mehr bekannt sind.

Beim Öffnen einer Word Vorlage wird dafür gesorgt, daß das entstehende Dokument sofort in einem bestimmten Verzeichnis abgelegt wird (das klappt ohne Probleme, indem der Benutzername mittels application.username ermittelt wird).

Die Dateien sollen aber auch einheitlichen Namenskonventionen entsprechen, wozu 2 Zeichenketten mit einerUserForm erfragt werden.

Dazu wurden 2 Public Variablen von Typ String definiert.

Wenn des Makro vom Modul-Code (.bas) in die Userform (.frm) geht, sind diese Public-Variablen noch bekannt und sie erhalten durch die Eingaben ihre Werte. Sie bringen diese aber nicht zurück.

Wenn die UserForm verlassen wird und das Makro wieder im Basic-Modul "ankommt", sind sie unbekannt und leer.

Content-ID: 135975

Url: https://administrator.de/contentid/135975

Ausgedruckt am: 26.11.2024 um 12:11 Uhr

76109
76109 15.02.2010 um 15:01:32 Uhr
Goto Top
Hallo mtriebler (Horst-Marti ...)!

Und wo hast Du die Variablen Public definiert?

Wenn die Variablen in einem Modul Public definiert sind, dann können sie in der UserForm auch verändert werden.

Gruß Dieter
mtriebler
mtriebler 15.02.2010 um 16:51:58 Uhr
Goto Top
Ja, natürlich, das sollen sie ja.

Aber die veränderte Variable kommt nicht mehr ins Modul zurück. Da ist das Problem.
mtriebler
mtriebler 15.02.2010 um 16:52:56 Uhr
Goto Top
Nachtrag: sie sind in modul1.bas fediniert worden.
76109
76109 15.02.2010 um 17:24:21 Uhr
Goto Top
Hallo mtriebler!

Kann es sein, dass die Variablen in der UserForm oder sonst wo, nochmal Lokal definiert sind? Das wäre für mich eine Erklärung.

Gruß Dieter

PS. Und im Modul steht z.B.: Public Variablennamen As String
mtriebler
mtriebler 15.02.2010 um 17:31:12 Uhr
Goto Top
Hallo, ich glaube ich hab jetzt selber eine.

Habe gesurft, daß in VBA globale Variablen in einem Extra-Modul stehen müssen, d.h.

getrennt von allen Prozeduren. Das wußte ich nicht und versuche es jetzt mal.

Gruß; wenn`s nicht klappt, melde ich mich wieder. Danke
76109
76109 15.02.2010 um 17:34:02 Uhr
Goto Top
Hallo mtriebler!

Achso, ja die Public-Anweisung darf natürlich nicht innerhalb einer Sub/Funktion stehen, sondern seperat am Anfang einer Modul-Codeseite. In dem Modul dürfen sich auch Sub's und Funktionen befinden. Wichtig ist nur, dass die Public-Anweisung separat ganz am Anfang steht.

Gruß Dieter