请问这段代码是什么意思

Private Sub Text16_KeyPress(KeyAscii As Integer)
If Chr(KeyAscii) < 0 Or Chr(KeyAscii) > 9 And KeyAscii <> 13 And KeyAscii <> 8 Then
MsgBox ("你刚输入的不是数字,而是其他字符。请重新输入!")
KeyAscii = 8
End If
If KeyAscii = 13 Then
Command5_Click
End If
End Sub

那个0、9、8、13是几个键的asc码的嘛,怎么看起来这段好象是阻止用户输入除了数字外的其他字符的哦

If Chr(KeyAscii) < 0 Or Chr(KeyAscii) > 9 And KeyAscii <> 13 And KeyAscii <> 8 Then
这句话是判断用户所输入的字符是什麼.
Chr(KeyAscii) < 0 Or Chr(KeyAscii) > 9表示这个字符是0-9之间的数字字符.
KeyAscii <> 13是回车
KeyAscii <> 8应该是退格
所以在这个TEXT框里允许用户输入的字符就是0-9,退格和回车.

如果输入的不是这个范围内的字符的话,就
MsgBox ("你刚输入的不是数字,而是其他字符。请重新输入!")
KeyAscii = 8
意思是报错,然后将刚才输入的字符删除掉(自动运行退格)

如果输入的是回车,就调用Command5单击事件.
If KeyAscii = 13 Then
Command5_Click
End If
温馨提示:答案为网友推荐,仅供参考