Office-Fragen.de

Normale Version: String in Pfad zur TextBox
Sie sehen gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo, so funzt der Code leider nicht:

Code:
Sub text()
Dim path
Dim txtBox
path = "TextBox5"
Set txtBox = Verein. & path 'Verein = Userform
txtBox.Value = "text"
End Sub

aber wie muss er formuliert werden?

Danke
Stefan
Hallo Stefan,
Sub mytext() 'ist aber umständlich
'der Name eines Subs oder einer Variablen sollte nie ein Schlüsselwort sein (text, path)
  Dim mypath
  Dim txtBox
  path = "TextBox5"
  Set txtBox = Verein.Controls(path)  'Verein = Userform
  txtBox.Value = "text"
End Sub
Sub mytext() 'einfach
  Verein.TextBox5 = "text"
End Sub
Da hast Du recht, das passt so. Der Grund liegt darin das mehrere Codes die Sub nutzen.
Code:
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
    DatumCheck ("TextBox1")
End Sub

Sub DatumCheck(strPath As String)
    Dim objTxtBx As Object
    Dim strDate As String

    Set objTxtBx = Verein.Controls(strPath)
    strDate = objTxtBx.Value
    On Error Resume Next
    If IsError(CStr(CDate(strDate))) = True Then
        Errormessage ("bitte ein korrektes Datum eingeben")
        objTxtBx.Value = ""
        On Error GoTo 0
Else:
        objTxtBx.Value = CDate(objTxtBx.Value)
    End If
End Sub

Sub Errormessage(strMessage As String)
MsgBox strMessage, vbOKOnly Or vbExclamation, "Eingabefehler"
End Sub

Es gibt aber auch Textboxen die unter Verein.Multipage2.Frame1 liegen. An dem Punkt wird Verein.Controls(strPath) nicht mehr funzen. Bin mir aber unsicher ob das wirklich so ist. Oder ob es eher sinnvoll ist alle Textboxen unterschiedlich zu benennen.. Ich eben noch am Basteln - Try and Error :-)
Keine Bange,
Textboxen die unter Verein.Multipage2.Frame1 liegen, sind genauso mit Verein.Controls(strpath) anzureden.
Versuch macht klug!
(25.05.2022, 20:32)AlterDresdner schrieb: [ -> ]Keine Bange,
Textboxen die unter Verein.Multipage2.Frame1 liegen, sind genauso mit Verein.Controls(strpath) anzureden.
Versuch macht klug!

Danke, und wieder Zeit gespart :-)
und ... eine schönen Abend noch von einem nicht ganz so alten waschechten Dresdner.....