Добрый день.
Не могу понять почему при Русской раскладке коды клавиш у меня заваливают за 1000.
Я хотел ограничить ввод в TextBox, создал Константу где указал 6 букв, которые должны вводиться в поле - "GRPМин"
В результате ввод Английских букв срабатывает, а Русских вызывает ошибку. И как я выяснил она связана с тем, что KeyAscii выдает номер клавиш больше чем 256
Когда я использую On Error Resume Next - то это просто спасает меня от ошибки, но при этом Русские буквы печатать в поле TextBox нельзя
[vba]Код
Option Explicit
Const cBoxTipBay As String = "МинGRP"
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'On Error Resume Next
Dim msgErr As String
If InStr(cBoxTipBay, Chr(KeyAscii)) = 0 Then KeyAscii = 0
MsgBox Chr(KeyAscii) & " " & KeyAscii
TextBox1.MaxLength = 3 ' Ограничение на ввод по кол-ву символов
End Sub
[/vba]