mit nachfolgendem Programmcode (Auszug) kann ich den Inhalt einer Zelle auf fehlerhafte Einträge mit Sonderzeichen bzw Ziffern überprüfen.
ASC_Text = ""
Ok = True
For i = 1 To Len(ActiveCell.Offset(0, 0))
If Asc(Mid(ActiveCell.Offset(0, 0), i, 1)) 32 Then
Ok = False 'ASCII-Zeichen 32 (Leerzeichen) wird akzetiert
ElseIf Asc(Mid(ActiveCell.Offset(0, 0), i, 1)) > 32 And Asc(Mid(ActiveCell.Offset(0, 0), i, 1)) 44 Then
Ok = False 'ASCII-Zeichen >32 und 44 werden nicht akzetiert
ElseIf Asc(Mid(ActiveCell.Offset(0, 0), i, 1)) > 46 And Asc(Mid(ActiveCell.Offset(0, 0), i, 1)) 65 Then
Ok = False 'ASCII-Zeichen >45 und 65 werden nicht akzetiert
ElseIf Asc(Mid(ActiveCell.Offset(0, 0), i, 1)) > 90 And Asc(Mid(ActiveCell.Offset(0, 0), i, 1)) 97 Then
Ok = False 'ASCII-Zeichen >90 und 97 werden nicht akzetiert
ElseIf Asc(Mid(ActiveCell.Offset(0, 0), i, 1)) > 122 And Asc(Mid(ActiveCell.Offset(0, 0), i, 1)) 191 Then
Ok = False 'ASCII-Zeichen >122 und 191 werden nicht akzetiert
End If 'Alle nicht aufgeführten ASCII-Zeichen werden akzeptiert
ASC_Text = Asc(Mid(ActiveCell.Offset(0, 0), i, 1)) 'Variable nennt ASCII-Zeichen
Next i
If Ok Then
....
Else
...
end if
Ich suche nach einer weiteren -darauf aufbauenden- Möglichkeit, anstelle eines Zellinhalts nun den Inhalt einer Variablen "Name" oder eines Textfelds "txtName.Text" auf fehlerhafte Einträge mit Sonderzeichen bzw Ziffern zu überprüfen.
Testweise hat es funktioniert wenn ich den Inhalt von txtName.Text an eine Zelle übergebe:
Range("Q1").Value = txtName.Text
Range("Q1").Select
Allerdings will ich diesen Umweg vermeiden und anstatt ActiveCell.Offset(0, 0) die Variable bzw. das Textfeld direkt in den obigen Programmcode einfügen, weiß aber nicht wie?
Hat jemand in diesem Forum eine Idee wie mein Vorhaben umgesetzt werden kann?
mfG
reiner