Microsoft Access 中的时间字段需要正确的输入掩码
Need a proper input mask for a time field in Microsoft Access
我的 table 字段是 date/time 并且格式如下:
mm/dd/yyyy hh:nn:ss
我希望用户看到这个(space 出现在日期和时间之间
__/__/__ __:__:__
我想要一个要求的输入掩码:
- 月份的 1 位或 2 位数字
- 数据的 1 位或 2 位数字
- 年份的所有 4 位数字
- 显示 space 但只是为用户跳过它
- 时、分和秒各有 1 位或 2 位数字
此外,在设置数据库时,为日期和时间设置两个单独的字段是否更明智。一位同事鼓励我将它们分解出来......似乎很明智?
控制用户输入在 Access 中不是一件容易的事,因为它针对相反的方向进行了优化:容忍并接受日期和时间的许多输入序列。
对于强制输入受控的情况,我写了两篇文章,包括完整代码(这里post太多了)和演示,可能会给你一些想法:
Entering ISO formatted date with input mask and full validation in Microsoft Access
当前代码位于 VBA.DateEntry。
和
Entering 24-hour time with input mask and full validation in Microsoft Access.
当前代码位于 VBA.TimeEntry。
00/00/0000##00:00:00
结果如图所示
我的 table 字段是 date/time 并且格式如下:
mm/dd/yyyy hh:nn:ss
我希望用户看到这个(space 出现在日期和时间之间
__/__/__ __:__:__
我想要一个要求的输入掩码:
- 月份的 1 位或 2 位数字
- 数据的 1 位或 2 位数字
- 年份的所有 4 位数字
- 显示 space 但只是为用户跳过它
- 时、分和秒各有 1 位或 2 位数字
此外,在设置数据库时,为日期和时间设置两个单独的字段是否更明智。一位同事鼓励我将它们分解出来......似乎很明智?
控制用户输入在 Access 中不是一件容易的事,因为它针对相反的方向进行了优化:容忍并接受日期和时间的许多输入序列。
对于强制输入受控的情况,我写了两篇文章,包括完整代码(这里post太多了)和演示,可能会给你一些想法:
Entering ISO formatted date with input mask and full validation in Microsoft Access
当前代码位于 VBA.DateEntry。
和
Entering 24-hour time with input mask and full validation in Microsoft Access.
当前代码位于 VBA.TimeEntry。
00/00/0000##00:00:00
结果如图所示