Clever-Excel-Forum

Normale Version: Name der aktiven Userform im Modul feststellen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo liebe Excel Freunde


im Modul1 meines Projektes habe ich folgenden Code stehen:


Code:
UserForm1.TextBox1.Value = i

Da ich meinen Code aus Modul1 nun in andere Projekte von mir einfügen möchte, brauche ich allerdings eine allgemeinere Schreibweise. Die Userform heißt dann nicht mehr UserForm1, sondern irgendetwas anderes. Der VBA Code im Modul muss also jeweils feststellen können, welcher Name meine aktive UserForm besitzt.
 

Also: (Festgestellter Name der UserForm). TextBox1.Value = i

Ich hoffe ihr könnt mir helfen.
Hallo,

würde es nicht reichen, wenn Du mit Suchen und Ersetzen arbeiten würdest?
(03.09.2015, 19:13)Steffl schrieb: [ -> ]Hallo,

würde es nicht reichen, wenn Du mit Suchen und Ersetzen arbeiten würdest?

Hallöchen,

... oder einfach den Namen aus einer Zelle auslesen?
Eine weitere Möglichkeit wäre die gute alte InputBox.
Hallo Christa,

übergib in Deinen Projekten die Userformen z.B. beim Activate-Ereignis einer globalen Objekktvariable. Dann kannst Du diese im Modul verwenden.

Oder so:
UserForms(0).Textbx1.Text = "Banane"

Funktioniert allerdings nur, wenn nur ein userform in Gebrauch ist. Wenn Du welche mit Hide im Hintergrund hast, passt das nicht mehr, weil die mitgezählt werden. Da kommst Du aber wahrscheinlich mit einer Schleife und der Eigenschaft .Visible weiter.
Hallo!
Eine weitere Möglichkeit:
Übergebe die UserForm an die Prozedur.

Allgemeines Modul:
Code:
Sub Uebergabe(UF As UserForm)
Dim i As Integer
i = 15
UF.TextBox1 = i
End Sub

Ins (z.B.) Initialize des UserForm:
Code:
Private Sub UserForm_Initialize()
Uebergabe Me
End Sub


Gruß Ralf