Herbers Excel-Forum - das Archiv

Textfeld

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
TextBox UserForm
Bild

Betrifft: Textfeld
von: Maximilian
Geschrieben am: 04.12.2003 10:50:53
Hallo Excelfreunde !

ich suche eine Lösung die dem Anwender in einem Textfeld max. nur die Eingabe von zwei Zeilen erlaubt. Multiline hat den Wert True. Da das Einfügen einer neuen Zeile mit der Eingabetaste erlaubt bleiben muss, kann ich vermutlich die Methode der max. zulässigen Zeichen nicht verwenden.

Ich bedanke mich schon im voraus für die Lösung.
LG
Maximilian

Bild

Betrifft: AW: Textfeld
von: Nayus
Geschrieben am: 04.12.2003 12:43:24
Hallo,
vielleicht hilft Dir ja folgende Lösung.
To Do:
Anpassen: Name der Userform, hier "UserForm1"
Name des Textfeldes, hier "TextBox1"

Funktion:
Unterbinden, dass meht als 2 Zeilen Text in eine Textbox eingegeben
werden können (max. 1 Zeilenumbruch erlauben)

Trigger:
KeyPress-Ereignis der Textbox

Beispiel:



Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Dim s As String, buff As String
Dim l_pos As Integer
l_pos = 0
lf_cnt = 0
s = UserForm1.TextBox1.Text
' Nach Zeilenumbrüchen suchen
For i = 1 To Len(s)
buff = buff & Mid(s, i, 1)
If Mid(s, i, 1) = Chr(13) Then
lf_cnt = lf_cnt + 1
If lf_cnt = 2 Then
l_pos = i
Exit For
End If
End If
Next i
If l_pos > 0 Then
' 2. Zeilenumbruch gefunden, Zeilenumbruch entfernen
buff = Mid(buff, 1, Len(buff) - 1)
End If
UserForm1.TextBox1.Text = buff
End Sub



Gruß,
Nayus
Bild

Betrifft: AW: Textfeld
von: Maximilian
Geschrieben am: 04.12.2003 15:40:23
Danke !
Bild

Betrifft: AW: Textfeld - Eingabelänge begrenzen
von: Galenzo
Geschrieben am: 04.12.2003 12:46:32
Hallo,
damit kannst du die maximale Länge der Eingabe in das Textfeld begrenzen:


Private Sub TextBox1_Change()
    If Len(TextBox1.Value) > 8 Then
        TextBox1.Value = Left(TextBox1.Value, Len(TextBox1.Value) - 1)
    End If
end sub

Ich hoffe, das hilft dir weiter.

mfg
Bild

Betrifft: AW: Textfeld - Eingabelänge begrenzen
von: Maximilian
Geschrieben am: 04.12.2003 15:39:42
Danke Ja
Bild
Excel-Beispiele zum Thema " Textfeld"
Freiraum am linken Rand von MS-FORMS-Textfeldern löschen Datumseingabe in Textfeld erzwingen
Textfelder in UserForm beim Start vorbelegen Werte aus einer UserForm-Textfeld-Serie in Arbeitsblatt
Im Textfeld nur Eingabe von 2 Ziffern zulassen, dann zum nächsten Bei Verlassen eines Textfeldes Prüfung, ob Datumseintrag
Im TextFeld einer UserForm-ComboBox Wert aus 2 Spalten anzeigen