Office中国论坛/Access中国论坛

标题: 请教如何将提示变为自己的语言!?(已解决) [打印本页]

作者: sxgaobo    时间: 2015-4-26 10:52
标题: 请教如何将提示变为自己的语言!?(已解决)
本帖最后由 sxgaobo 于 2015-4-27 18:24 编辑

在为日期型单元格设置了“输入掩码”后,一旦输入的数据不合乎规矩,系统将给出如下提示,如何能将提示的内容改为自己的话:您输入的日期格式错误,请修改!


作者: t小宝    时间: 2015-4-26 11:53
输入掩码不像有效性规则,有可以自定义消息的有效性文本属性。
但可以在窗体的出错事件中取消默认的提示,使用自己的提示消息:

Private Sub Form_Error(DataErr As Integer, Response As Integer)
    If DataErr = 2279 Then    ‘掩码错误编号是2279
        Response = 0                 '不显示默认的错误提示
        MsgBox "输入格式不正确,请检查你的输入。"
    End If
End Sub

作者: sxgaobo    时间: 2015-4-26 13:30
t小宝 发表于 2015-4-26 11:53
输入掩码不像有效性规则,有可以自定义消息的有效性文本属性。
但可以在窗体的出错事件中取消默认的提示, ...

谢谢版主!
您的方法可以在出错时按自己设置的提示,可我需要的是这样的结果,当输入“201-5-8”时,ACCESS认,可往SQL库里写时是不允许的啊!也就是说当输入“201-5-8“时,ACCESS是不报错的,我希望的是所输入的日期必须是”2015-4-26“这样的,这问题怎么解决啊?
作者: t小宝    时间: 2015-4-26 13:57
再在文本框的格式属性中选择一个日期格式
作者: sxgaobo    时间: 2015-4-26 16:02
t小宝 发表于 2015-4-26 13:57
再在文本框的格式属性中选择一个日期格式

我是那样做的啊,可输入3位数的年份不报错啊!



作者: t小宝    时间: 2015-4-26 16:28
sxgaobo 发表于 2015-4-26 13:30
谢谢版主!
您的方法可以在出错时按自己设置的提示,可我需要的是这样的结果,当输入“201-5-8”时,ACC ...

“201-5-8”这个日期确实存在,当然不会报错,sql中报错,可能是日期字段类型不够大
可以在有效性规则或更新前事件中用代码限定日期大于 1900-1-1
作者: sxgaobo    时间: 2015-4-26 19:12
t小宝 发表于 2015-4-26 16:28
“201-5-8”这个日期确实存在,当然不会报错,sql中报错,可能是日期字段类型不够大
可以在有效性规则或 ...

谢谢!
作者: todaynew    时间: 2015-4-27 16:29
sxgaobo 发表于 2015-4-26 13:30
谢谢版主!
您的方法可以在出错时按自己设置的提示,可我需要的是这样的结果,当输入“201-5-8”时,ACC ...

不用掩码,而用有效性规格和有效性规则文本设置比较灵活。
可以在有效性规格属性中设置:>= #1/1/2015# And <#1/1/2020#
然后在有效性文本中写:必须输入2015/1/1至2020/1/1之间的日期
作者: sxgaobo    时间: 2015-4-27 18:24
todaynew 发表于 2015-4-27 16:29
不用掩码,而用有效性规格和有效性规则文本设置比较灵活。
可以在有效性规格属性中设置:>= #1/1/2015#  ...

谢谢!!!搞定了




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3