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-Key: 135975

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

Printed on: April 16, 2024 at 14:04 o'clock

Mitglied: 76109
76109 Feb 15, 2010 at 14:01:32 (UTC)
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
Member: mtriebler
mtriebler Feb 15, 2010 at 15:51:58 (UTC)
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.
Member: mtriebler
mtriebler Feb 15, 2010 at 15:52:56 (UTC)
Goto Top
Nachtrag: sie sind in modul1.bas fediniert worden.
Mitglied: 76109
76109 Feb 15, 2010 at 16:24:21 (UTC)
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
Member: mtriebler
mtriebler Feb 15, 2010 at 16:31:12 (UTC)
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
Mitglied: 76109
76109 Feb 15, 2010 at 16:34:02 (UTC)
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