Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Label
BildScreenshot zu Label Label-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema RefEdit
BildScreenshot zu RefEdit RefEdit-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema TextBox
BildScreenshot zu TextBox TextBox-Seite mit Beispielarbeitsmappe aufrufen

Textbox Multiline

Betrifft: Textbox Multiline von: Bernd Cramer
Geschrieben am: 06.08.2008 08:53:03

Hallo,

ich beschäftige mich mit folgendem Problem:
In eine MultilineTextbox werden Daten eingeben. Ich möchte aber die Zahl der zeilen auf 6 Zeilen begrenzen. In der jetzigen Variante wird men bei der Einagbe gewarnt, dass die 6 . Zeile erreicht ist. man kann nach der Warnung noch weiter ausfüllen, das diese Zeile auch gefüllt ist bzw. kein Text einfach abgetrennt wird. Aber daurch wird es wieder möglich auch die 7. u.ff. Zeilen zu beschreiben. Das ist aber absolut nicht gewünscht. Mein Problem ist: Wie kann ich dies verhindern. Vielleicht hat jemand einen Tip für mich.

Private Sub Tbgrund1_Change()
With Me
    If linie = False Then
        If .Tbgrund1.LineCount = 6 Then
            MsgBox " Bitte Eingabe beenden! Maximale Anzahl der Zeilen ist erreicht."
            linie = True
        End If
    End If
End With
End Sub


  

Betrifft: AW: Textbox Multiline von: Herby
Geschrieben am: 06.08.2008 09:13:16

Hallo Bernd,

wenn du die Ändern-Eigenschaft der Textbox auf Falsch setzt,
nachdem die 6. Zeile geschrieben wurde,
dann kann man nichts mehr eingeben:

TextBox1.Enabled = False

Ist das eine Lösung ?

Viele Grüße
Herby


  

Betrifft: AW: Textbox Multiline von: Bernd Cramer
Geschrieben am: 06.08.2008 09:31:24

Hallo Herby

erst einmal Danke

Im Prinzip ja.
Die Meldung kommt aber wenn das erste Zeichen in die 6. Zeile geschrieben wird. Ich muss also noch irgenwie das Ende der 6. Zeile erkennen. Danach kann man ja die Textbox auf False setzen. Ist die Textbox dann beim nächsten Aufruf der Userform wieder True?

Gruß
Bernd


  

Betrifft: AW: Textbox Multiline von: Daniel
Geschrieben am: 06.08.2008 10:48:22

Hi

das Enablen der Textbox hätte doch den Nachteil, daß der Anwender keine Möglichkeit mehr hat, seinen Text zu kürzen, das ist sicherlich auch nicht das, was du willst.

du kannst mit folgendem Code die weiter Eingabe von Text unterbinden, sobald eine bestimmte Zeilenzahl überschritten wird, trotzdem ist es dem Anwender weiterhin möglich, text zu löschen und die Eingabe zu kürzen:

Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If TextBox1.LineCount > 5 Then KeyAscii = 0
End Sub



Gruß, Daniel


  

Betrifft: Schöne Lösung !! von: Herby
Geschrieben am: 06.08.2008 11:14:06

Hallo Daniel,

ich finde deine Lösung super !

Viele Grüße
Herby


 

Beiträge aus den Excel-Beispielen zum Thema "Textbox Multiline"