输入框限制 小数点两位小数
我只花了一天半的时间在论坛上搜索该解决方案,但它似乎还没有出现,因此我正在分享。
在访问中,您可以使用Decimal Places属性指定表单控件显示的小数位数。 您还可以在表设计中指定存储数据的小数位数。 不幸的是,这两个都不限制数据。 将小数位数属性设置为2的控件可以具有1.23456的条目! Access接受输入。
这杀死了我的一些表格计算。 我需要一种不会引起其他事件触发的解决方案,如果您仅使用Round()更改控件OnExit的值,就会发生这种情况。 我还需要一种可以轻松地在6种表单的360个文本框中实现的解决方案。 为每个有限的击键编写一个Sub不会发生。
解:
私有子Form_KeyPress(KeyAscii作为整数)
如果InStr(1,Me.Controls(Me.ActiveControl.Name).Text,“。”)<> 0然后
如果Me.Controls(Me.ActiveControl.Name).SelStart> = InStr(1,Me.Controls(Me.ActiveControl.Name).Text,“。”)或Me.Controls(Me.ActiveControl.Name).SelStart> = InStr(1,Me.Controls(Me.ActiveControl.Name).Text,“。”)+