|
|
|
| читал читал про input mask пробовал примеры не работает.
В общем ситуация такая что на поле в форме надо сделать ограничение чтобы не все подряд вводили а только буквы в любом регистре, цифры и все прочее отменить.
Как сделать? Спасибо | |
|
| |
|
|
|
| ok, problem solved
http://support.microsoft.com/kb/114554 | |
|
| |
|
|
|
| хмм, работает но не работает когда делаем пробелы или точки в именах
скажем "Mr R" или "Mr. R." не работает, т.к. есть точки и пробелы.
Есть у кого-нибудь идеи, был бы признателен. В коде модуля есть такая строка определяющая символы
If SingleChar < "A" Or SingleChar > "Z" Then
IsAlpha = False
|
Может тут както можно дабавить еще символы, я совсем новичок в этом | |
|
| |
|
|
|
| РЕШЕНИЕ:
В этой процедуре в цикле посимвольной проверки сделайте сначала сравнение с вашими допустимыми "иными" символами, а потом уже делайте сравнение на буквы, например так:
For LoopVar = 1 To Len(MyString)
SingleChar = UCase(Mid$(MyString, LoopVar, 1))
If SingleChar = " " Or SingleChar = "." Then '<--- вот это новая проверка
ElseIf SingleChar < "A" Or SingleChar > "Z" Then
IsAlpha = False
Exit Function
End If
Next LoopVar
|
| |
|
| |
|
|
|
| а что дает такая проверка - она действует после того, как символ уже введен (или даже весь стринг)
если ты проверяшь после ввода каждого символа - что за смысл каждый раз проверять весь стринг
может лучше нажатие клавиш перехватывать? | |
|
| |