HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Forumbeitrag
Excel-Version des Fragestellers:
bis 2003
Erfahrungslevel des Fragestellers:
Basiskenntnisse in VBA
Kuwer
26.11.2024 12:29:38
AW: TextBox in UserForm
Hallo Daniel Eberhard,

in der Fehlermeldung steht doch, was Du machen sollst. ;-)
Private Sub UserForm_Activate()

TextBox1.SetFocus
TextBox1.Text = Worksheets("Tabelle1").Shapes("Textfeld 2").DrawingObject.Text
TextBox2.SetFocus
TextBox2.Text = Worksheets("Tabelle1").Shapes("Textfeld 3").DrawingObject.Text
TextBox3.SetFocus
TextBox3.Text = Worksheets("Tabelle1").Shapes("Textfeld 4").DrawingObject.Text
End Sub

Gruß, Uwe
Als Antwort auf diesen Beitrag
Daniel Eberhard
26.11.2024 11:34:49
AW: TextBox in UserForm
Hallo Uwe
Leider war meine Freude vergebens. Nun habe ich unterstehender Code erweitert. Das heisst, ich habe Deinen Code für 2 weitere Textboxen und Listboxen angewendet.
Nun krieg ich die Fehlermeldung Laufzeitfehler '2185 Eigenschaft LineCount konnte nicht abgerufen werden. Markiert wird die Zeile



do while .linecount > 6


Was mache ich jetzt wieder falsch?

Hier noch mein Code:


Private Sub TextBox1_Change()
Static blnGesperrt As Boolean
Dim lngP As Long

If Not blnGesperrt Then
blnGesperrt = True
With TextBox1
Do While .LineCount > 8
lngP = .SelStart
.Text = Left(.Text, Len(.Text) - 1 + (Asc(Right(.Text, 1)) = 10))
.SelStart = lngP
Loop
End With
blnGesperrt = False
End If

Klick = "OK"

End Sub

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Klick = "OK" Then
Select Case MsgBox("Sollen Ihre Änderungen gespeichert werden?", vbYesNoCancel + vbQuestion, "Warnung")
Case vbYes
Worksheets("Tabelle1").Shapes("Textfeld 2").DrawingObject.Text = TextBox1.Text
Case Cancel
Cancel = True
End Select
End If
End Sub

Private Sub TextBox2_Change()
Static blnGesperrt As Boolean
Dim lngP As Long

If Not blnGesperrt Then
blnGesperrt = True
With TextBox2
Do While .LineCount > 6
lngP = .SelStart
.Text = Left(.Text, Len(.Text) - 1 + (Asc(Right(.Text, 1)) = 10))
.SelStart = lngP
Loop
End With
blnGesperrt = False
End If
End Sub

Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Klick = "OK" Then
Select Case MsgBox("Sollen Ihre Änderungen gespeichert werden?", vbYesNoCancel + vbQuestion, "Warnung")
Case vbYes
Worksheets("Tabelle1").Shapes("Textfeld 3").DrawingObject.Text = TextBox2.Text
Case Cancel
Cancel = True
End Select
End If
End Sub

Private Sub TextBox3_Change()
Static blnGesperrt As Boolean
Dim lngP As Long

If Not blnGesperrt Then
blnGesperrt = True
With TextBox3
Do While .LineCount > 7
lngP = .SelStart
.Text = Left(.Text, Len(.Text) - 1 + (Asc(Right(.Text, 1)) = 10))
.SelStart = lngP
Loop
End With
blnGesperrt = False
End If
End Sub

Private Sub UserForm_Activate()
TextBox1.Text = Worksheets("Tabelle1").Shapes("Textfeld 2").DrawingObject.Text
TextBox2.Text = Worksheets("Tabelle1").Shapes("Textfeld 3").DrawingObject.Text
TextBox3.Text = Worksheets("Tabelle1").Shapes("Textfeld 4").DrawingObject.Text
End Sub


Ich hoffe das ich Dich dann in Ruhe lassen kann.

Freundliche Grüsse
Daniel Eberhard
Folgenachrichten
Antwort auf Beitrag erstellen

Beispieldatei hochladen