ist es möglich einer Textbox in einer Userform die Anzahl der Zeilen zubeschränken zB auf nur 7 Zeilen.
Oder eben nur Zeilen im sichtbaren Bereich.
Wenn ja, dann bitte wie - vielleicht über ein Makro ?
Gruß Wolfgang
Option Explicit
Dim Eingabesperren As Boolean
Private Sub TextBox1_Change()
Dim MaxZeilen As Integer
MaxZeilen = 7
Eingabesperren = False
If TextBox1.LineCount > MaxZeilen Then
MsgBox "Es sind nur " & MaxZeilen & " Zeilen zulässig." & Chr("10") & "Bitte Textteile lö _
schen.", VbCritical
Eingabesperren = True
End If
End Sub
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If Eingabesperren Then KeyAscii = 0
End Sub
Gruß, Daniel
Um die Anzahl der Zeilen in einer Textbox innerhalb einer Userform in Excel zu begrenzen, kannst du das folgende Makro verwenden. Diese Methode ist für Excel-Versionen geeignet, die VBA unterstützen.
Option Explicit
Dim Eingabesperren As Boolean
Private Sub TextBox1_Change()
Dim MaxZeilen As Integer
MaxZeilen = 7
Eingabesperren = False
If TextBox1.LineCount > MaxZeilen Then
MsgBox "Es sind nur " & MaxZeilen & " Zeilen zulässig." & Chr(10) & "Bitte Textteile löschen.", vbCritical
Eingabesperren = True
End If
End Sub
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If Eingabesperren Then KeyAscii = 0
End Sub
Fehler: Makro funktioniert nicht
Lösung: Stelle sicher, dass du das Makro im richtigen Codefenster der Userform eingefügt hast. Überprüfe auch, ob die Textbox korrekt benannt ist (z.B. TextBox1).
Fehler: Zeilenanzahl wird nicht korrekt gezählt
Lösung: Vergewissere dich, dass die Textbox die Eigenschaft MultiLine auf True gesetzt hat. Dies ist notwendig, um mehrere Zeilen zu ermöglichen.
Falls du keine VBA-Makros verwenden möchtest, kannst du alternativ die Maximalanzahl an Zeichen mit der .MaxLength-Eigenschaft der Textbox begrenzen. Dies ist jedoch nicht gleichwertig, da es die Zeilenanzahl nicht direkt kontrolliert.
MaxLength auf einen Wert, der die Zeilenanzahl indirekt begrenzt (z.B. 100 Zeichen).Hier sind einige praktische Anwendungen für die Begrenzung der Zeilenanzahl in einer Textbox:
1. Kann ich die Zeilenanzahl dynamisch ändern?
Ja, du kannst den Wert von MaxZeilen im Makro anpassen, je nach Bedingungen im Programm.
2. Funktioniert dieses Makro in Excel 365?
Ja, das Makro funktioniert in Excel 365 und anderen Versionen, die VBA unterstützen.
3. Gibt es eine Möglichkeit, die Sichtbarkeit von Zeilen zu steuern?
Das Makro kann so angepasst werden, dass es auch die Sichtbarkeit von Text innerhalb der Textbox steuert, indem es bei Überschreitung der Zeilenanzahl nicht nur eine Warnung ausgibt, sondern auch den Text zurücksetzt.