2015-03-02 48 views
1

我在Access中构建表单,并且我有几个需要整数值的文本框。现在你可以输入字符而不是数字,当按下提交按钮时会弹出一个调试窗口。如何防止用户在整型文本框中输入无效时按下提交按钮。防止用户输入任何东西,但整数到文本框

谢谢!

+0

你有没有尝试在文本框的_BeforeUpdate或OnChange事件中放入'check-for-number'代码? – tospig 2015-03-02 22:05:33

回答

1

首先,使字段在表格设计中成为数字类型。然后进入“字段属性”并确保“字段大小”设置为“整数”。这会处理十进制数字,因为当文本框失去焦点时它会将它们四舍五入到最接近的整数。

接下来,进入提交按钮属性并设置Enabled = False。这会变灰,并且不允许用户点击它。您可能希望将此代码添加到表单的On Current属性中,以便每当加载记录时,都会根据已存在的值启用或禁用提交按钮。您将需要“和”更多的整数文本框对象以相同的,如果你有你的表格上有多个整数文本框声明:

Private Sub Form_Current() 
    If Not IsNumeric(Me.IntegerTextBox.Value) Then 
     Me.SubmitButton.Enabled = False 
    Else 
     Me.SubmitButton.Enabled = True 
    End If 
End Sub 

最后,该代码添加到文本框的On Change事件。只要输入了一个合适的数字值,这将启用该按钮,并且每次按下某个按键时都会更新该按钮。

Private Sub IntegerTextBox_Change() 
    If Not IsNumeric(Me.IntegerTextBox.Text) Then 
     Me.SubmitButton.Enabled = False 
    Else 
     Me.SubmitButton.Enabled = True 
    End If 
End Sub 

对您窗体上的每个整数字段执行此操作。

+0

只是想知道这是否是你正在寻找的答案? – WestAce 2015-03-09 17:10:07

+0

有什么办法可以使用这段代码,但仍然允许小数?但我认为这是我需要去的正确方向 – 2015-03-23 19:03:15

+1

是的。进入你的餐桌设计,并使字段类型数字。然后进入字段属性并将“字段大小”属性从“整数”更改为“单个”(如果您有较大的小数,则将其更改为“双精度”)。我将把发布的答案保留为整数,因为这是您的原始问题。 – WestAce 2015-03-23 21:27:25

0

在表中设计使数据类型数字(整数)。

+0

抱歉没有正确地阅读你的问题 - 我会回来。 – 2015-03-02 21:38:47

相关问题