以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 高级功能研发区 (http://weistock.com/bbs/list.asp?boardid=5) ---- [求助]文本框只输入数字 (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=99511) |
-- 作者:c100011651 -- 发布时间:2016/6/23 21:02:45 -- [求助]文本框只输入数字 我在百度查了答案,但放在金字塔用似乎用不了。测试了一下,貌似是因为KEYPRESS事件没有响应。 我是这样测试的: Sub UserForm1_txtWeight_KeyPress(KeyAscii) call application.MsgOut (1) End Sub 按理如果有反应的话,消息框应该会显示1吧 为什么KEYPRESS事件没反应呢?
|
-- 作者:pel46585 -- 发布时间:2016/6/24 17:32:46 -- txtWeight是什么? 改为如下代码试下
Sub UserForm1_KeyPress(KeyAscii) call application.MsgOut (1) End Sub |
-- 作者:c100011651 -- 发布时间:2016/6/24 20:17:55 -- 非常感谢 |
-- 作者:c100011651 -- 发布时间:2016/6/26 18:49:48 -- 为何还是无法限制只输入数字呢?代码如下 Sub UserForm1_KeyPress(KeyAscii) If KeyAscii < 48 Or KeyAscii > 57 Then KeyAscii = 0 End Sub |
-- 作者:pel46585 -- 发布时间:2016/7/11 13:31:05 -- Sub UserForm1_TextBox1_KeyPress(KeyAscii)
application.MsgOut KeyAscii
If KeyAscii < 48 Or KeyAscii > 57 Then KeyAscii = 0 End Sub 测试了下,确实无效。 可以通过Change事件,做些修改实现你的目的,我增加了个Lable控件。 Sub UserForm1_TextBox1_Change()
If UserForm1_TextBox1.Text <> "" Then
If Asc(UserForm1_TextBox1.Text) > 47 And Asc(UserForm1_TextBox1.Text) < 58 Then
UserForm1_Label1.Caption = UserForm1_Label1.Caption & UserForm1_TextBox1.Text
application.MsgOut UserForm1_Label1.Caption & UserForm1_TextBox1.Text
End If
UserForm1_TextBox1.Text = ""
End If End Sub |
-- 作者:jinn -- 发布时间:2016/7/18 18:03:15 -- 请问一下输入,可以输入多内容吗?,比如下拉菜单之类的,还有勾选这类的 |