Umlaute
25.11.2005 15:50:45
Rene
Ich habe eine Frage zwecks Umlauten.
Ich habe eine UserForm mit einer TextBox,die Angaben der TextBox werden in eine Zelle geschrieben.Die Länge darf aber nicht mehr sein als 25 Zeichen OHNE Umlaute,wenn ich aber nun Umlaute in die TextBox mitnehme ändert es die Umlaute aber ich darf dann nur noch 20 Zeichen eintragen können.Sobald man ein Wort mit einem Umlaut schreibt wird aus 1 Buchstaben (ä) zwei Buchstaben(ae) in die Zelle geschrieben was auch bei der Länge zu berücksichtigen ist.
Hier der Code den ich bis jetzt habe:
Private Sub TextBox2_Change()
Dim laR As Long
Range("D7:D79") = TextBox2
Sheets("Gleis").Range("D7:D79") = TextBox2
Application.ScreenUpdating = False
laR = Cells(Rows.Count, 1).End(xlUp).Row
Range("D7:D" & laR).Replace What:="Ä", Replacement:="Ae", _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=True
Range("D7:D" & laR).Replace What:="Ö", Replacement:="Oe", _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=True
Range("D7:D" & laR).Replace What:="Ü", Replacement:="Ue", _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=True
Range("D7:D" & laR).Replace What:="ä", Replacement:="ae", _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=True
Range("D7:D" & laR).Replace What:="ö", Replacement:="oe", _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=True
Range("D7:D" & laR).Replace What:="ü", Replacement:="ue", _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=True
Range("D7:D" & laR).Replace What:="ß", Replacement:="ss", _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=True
If Len(TextBox2.Text) > 20 Then
MsgBox "Maximal 20 Zeichen.", 48, "Hinweis"
TextBox2.Text = Left(TextBox2.Text, Len(TextBox2.Text) - 1)
End If
End Sub
Die Frage ist nun ob ich die TextBox so abfragen kann das automatisch wenn ein Wort mit Umlaut eingetragen und die 20 damit überschritten wird die Meldung kommt "Nicht mehr als 20 Buchstaben" wenn ich aber ein Wort ohne Umlaut habe können 25 Zeichen verwendet werden und dann erst die Meldung "Nicht mehr als 25 Zeichen" kommt.
Ich hoffe ich habe mich verständlich ausgedrückt und es gibt so eine Abfrage.
Gruß Rene