gpt4 book ai didi

excel - 将用户输入限制为用户表单文本框中的整数

转载 作者:行者123 更新时间:2023-12-02 13:10:45 25 4
gpt4 key购买 nike

我的用户表单上有一个文本框,我试图将用户输入限制为仅允许整数值。我能够做到这一点,但行为有点奇怪。首先,这是我的代码:

Private Sub txtAnswer_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If (KeyAscii >= 48) And (KeyAscii <= 57) Then
Me.txtAnswer.SetFocus
Else
KeyAscii = 0
Me.txtAnswer.SetFocus
End If
End Sub

问题是,用户输入值后,焦点似乎从文本框上消失。此外,如果用户确实输入了整数值,则该值将从文本框中删除(即输入被“吃掉”)。 SetFocus 行是我尝试使控件正常运行的尝试,但它们似乎没有效果。

我想要做的就是确保用户不会在文本框中输入类似“r”(或任何其他非整数值)的内容。任何 >= 0 的整数值都是完全可以接受的(包括 10 或 1000000 等多个数字值)。

有人能明白为什么我的方法不起作用吗?我尝试了几种不同的方法,并进行了相当多的搜索,但我找不到有效的方法。

谢谢

最佳答案

先行一步!

'~~> Disable Pasting CTRL V , SHIFT + INSERT
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If (Shift = 2 And KeyCode = vbKeyV) Or (Shift = 1 And KeyCode = vbKeyInsert) Then
KeyCode = 0
End If
End Sub

'~~> Preventing input of non numerics
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
Case vbKey0 To vbKey9, vbKeyBack, vbKeyClear, vbKeyLeft, _
vbKeyRight, vbKeyUp, vbKeyDown, vbKeyTab
Case Else
KeyAscii = 0
Beep
End Select
End Sub

关于excel - 将用户输入限制为用户表单文本框中的整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10904474/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com