excel vba 使用 keypress keyascii 检查输入的文本中的希伯来语
excel vba check for Hebrew in text entered, using keypress keyascii
在我的 Excel-2013 VBA 项目中,我有一个带有文本框的用户窗体。我需要此文本框只接受数字、A-Z、a-z 和 27 个希伯来字母。
Private Sub my_TextBox_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If (Not (KeyAscii > 47 And KeyAscii < 58)) And _ <= 0-9
(Not (KeyAscii > 64 And KeyAscii < 91)) And _ <= A-Z
(Not (KeyAscii > 96 And KeyAscii < 123)) And _ <= a-z
(Not (KeyAscii > 127 And KeyAscii < 155)) Then <= Hebrew
KeyAscii = 8
Beep
End If
End Sub
除希伯来语外工作正常。
它无法将 ASCII 128 到 154 识别为希伯来语(这些值可在 ASCII 代码页 862 中找到)。
也就是说,尝试在文本框中键入希伯来字母会发出哔声。
我如何告诉 Excel 使用 ASCII 代码页 862?
Dirk Reichel 给了我一个简单的想法,即在 my_TextBox 中输入希伯来字符时调试和检查其中的内容。
我就是这样发现 ASCII 中的希伯来字母表介于 1488 和 1514 之间。
我现在的代码是:
Private Sub my_TextBox_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If (Not (KeyAscii > 47 And KeyAscii < 58)) And _ <= 0-9
(Not (KeyAscii > 64 And KeyAscii < 91)) And _ <= A-Z
(Not (KeyAscii > 96 And KeyAscii < 123)) And _ <= a-z
(Not (KeyAscii > 1487 And KeyAscii < 1515)) Then <= Hebrew
KeyAscii = 8
Beep
End If
End Sub
现在它也支持希伯来语。
谢谢德克。
在我的 Excel-2013 VBA 项目中,我有一个带有文本框的用户窗体。我需要此文本框只接受数字、A-Z、a-z 和 27 个希伯来字母。
Private Sub my_TextBox_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If (Not (KeyAscii > 47 And KeyAscii < 58)) And _ <= 0-9
(Not (KeyAscii > 64 And KeyAscii < 91)) And _ <= A-Z
(Not (KeyAscii > 96 And KeyAscii < 123)) And _ <= a-z
(Not (KeyAscii > 127 And KeyAscii < 155)) Then <= Hebrew
KeyAscii = 8
Beep
End If
End Sub
除希伯来语外工作正常。
它无法将 ASCII 128 到 154 识别为希伯来语(这些值可在 ASCII 代码页 862 中找到)。
也就是说,尝试在文本框中键入希伯来字母会发出哔声。
我如何告诉 Excel 使用 ASCII 代码页 862?
Dirk Reichel 给了我一个简单的想法,即在 my_TextBox 中输入希伯来字符时调试和检查其中的内容。
我就是这样发现 ASCII 中的希伯来字母表介于 1488 和 1514 之间。
我现在的代码是:
Private Sub my_TextBox_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If (Not (KeyAscii > 47 And KeyAscii < 58)) And _ <= 0-9
(Not (KeyAscii > 64 And KeyAscii < 91)) And _ <= A-Z
(Not (KeyAscii > 96 And KeyAscii < 123)) And _ <= a-z
(Not (KeyAscii > 1487 And KeyAscii < 1515)) Then <= Hebrew
KeyAscii = 8
Beep
End If
End Sub
现在它也支持希伯来语。
谢谢德克。