Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

Textbox per Variable ansprechen -> Textbox Wert auslesen.

Forumthread: Textbox per Variable ansprechen -> Textbox Wert auslesen.

Textbox per Variable ansprechen -> Textbox Wert auslesen.
14.02.2025 11:40:24
Christopher
Hallo zusammen,
ich habe eine kleine Frage, die ich per Suche nicht gefunden habe. Vielleicht ist mein Problem zu speziell.....

Ich habe in einer Userform mehrere Toggle Buttons. Diese Toggle Buttons schalten weitere Textboxen frei in die Werte eingetragen werden können.

Mit einer Schleife gehe ich alle Toggle Button durch und schaue ob die ToggleButton.Value=True ist. Sollte das der Fall sein, wird der Namens des Toggle Buttons genommen und der Teil Links von "_" rausgeschrieben.
Bsp: Mail_ToggleButton -> Mail

Die Textbox, welche der Button freischaltet, tragen das gleiche Namensschema: Mail_TextBox.

Ich möchte nun den Wert der Textbox in eine neue Variable schreiben, aber genau hier hänge ich fest oder sehe den Wald nicht.....

Code Ausschnitt:



For Each objControl In Controls
Select Case TypeName(objControl)
Case "ToggleBtton"
If objControl.Value=True Then
Zeichen=InStr(1, objControl.Name, "_", vbTextCompare) -1
NameobjControl=Left(objControl.Name, Zeichen)
WertTextBox=NameobjControl & "_TextBox" & .Value




Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Textbox per Variable ansprechen -> Textbox Wert auslesen.
14.02.2025 12:01:56
Engelchen
Hallo,

vielleicht fehlt bei Case "ToggleBtton" ein "u"?

Gruß!
Andreas
AW: Textbox per Variable ansprechen -> Textbox Wert auslesen.
14.02.2025 12:13:16
Onur
Das geht SO nicht - poste mal die Datei.
AW: Textbox per Variable ansprechen -> Textbox Wert auslesen.
14.02.2025 12:33:04
Christopher
Ich sah den Wald vor lauter Bäumen nicht.......

Beim Erstellen der Testdatei, da ich die Originaldatei nicht teilen kann/darf, ist mir mein Fehler aufgefallen bzw. die Lösung des Problems:
Man kann den Wert der Textbox mit Me.Controls(VariablerName).Value abfragen.

Daher müsste der Codeschnipsel so lauten:



For Each objControl In Controls
Select Case TypeName(objControl)
Case "ToggleButton"
If objControl.Value=True Then
Zeichen=InStr(1, objControl.Name, "_", vbTextCompare) -1
NameobjControl=Left(objControl.Name, Zeichen)
WertTextBox=Me.Controls(NameobjControl & "_TextBox").Value
End If
Case Else
End Select
Next


Vielen Dank für Eure Hilfe und der Nachfrage nach der Datei! ;)

Besten Gruß
Christopher
Anzeige
AW: Textbox per Variable ansprechen -> Textbox Wert auslesen.
14.02.2025 12:50:51
Onur
Warum so kompliziert ?
    For Each co In UserForm1.Controls

If TypeName(co) = "ToggleButton" Then
If co.Value = True Then x = Replace(co.Name, "ToggleButton", "TextBox")
End If
Next
AW: Textbox per Variable ansprechen -> Textbox Wert auslesen.
14.02.2025 12:53:45
Onur
    Dim x

For Each co In UserForm1.Controls
If TypeName(co) = "ToggleButton" Then
If co.Value = True Then x = Replace(co.Name, "ToggleButton", "TextBox")
End If
WertTextBox=Me.Controls(x).Value
Next
Anzeige
AW: Textbox per Variable ansprechen -> Textbox Wert auslesen.
14.02.2025 13:31:29
Christopher
Vielen Dank Onur für den Hinweis.

Werde ich entsprechend anpassen.
und wieso is weiter offen?!
19.02.2025 20:29:43
Oberschlumpf
AW: Textbox per Variable ansprechen -> Textbox Wert auslesen.
14.02.2025 12:09:37
Christopher
Hallo Engelchen,
das stimmt, ich habe den Code abgetippt da die Excel Tabelle auf einem Rechner ohne Internetverbindung läuft.....
Hier der Codeschnipsel nochmal und hoffentlich ohne Fehler :D

Ich komme wie gesagt bis zu dem Punkt WertTextBox=NameobjControl & "_TextBox" & .Value.




For Each objControl In Controls
Select Case TypeName(objControl)
Case "ToggleButton"
If objControl.Value=True Then
Zeichen=InStr(1, objControl.Name, "_", vbTextCompare) -1
NameobjControl=Left(objControl.Name, Zeichen)
WertTextBox=NameobjControl & "_TextBox" & .Value
End If
Case Else
End Select
Next

Anzeige
AW: Textbox per Variable ansprechen -> Textbox Wert auslesen.
14.02.2025 12:22:48
Ulf
Hi
die Zuweisung mit String läuft nur so


WertTextBox=Me.Controls(NameobjControl & "_TextBox").Value

hth
Ulf
AW: Textbox per Variable ansprechen -> Textbox Wert auslesen.
14.02.2025 12:35:01
Christopher
Vielen Dank Ulf,
hätte die Seite nochmal aktualisieren müssen bevor ich meinen Beitrag gepostet habe :D

Danke für die Mühe!

Gruß
Christopher
Anzeige

Forumthreads zu verwandten Themen