excel日期校验

=AND(IF(AND(ISERROR(DATEVALUE(LEFT(G3,4)&"/"&RIGHT(G3,3))),ISERROR(DATEVALUE(LEFT(G3,4)&"/"&RIGHT(G3,4))),ISERROR(DATEVALUE(LEFT(G3,4)&"/"&RIGHT(G3,5)))),0,1),MID(G3,5,1)="/",OR(MID(G3,7,1)="/",MID(G3,8,1)="/"))
这个是在G3单元格校验输入的日期是否符合规则,不符合的弹窗提示,目前这公式可以
YYYY/MM/DD、YYYY/MM/D、YYYY/M/DD、YYYY/M/D这几种都可以通过并且DD>31时会提示,
问题是MM>12时没有提示,竟然通过,请问哪里有问题,谢谢了。

excel日期校验方法是数据有效性验证。

1、 数据有效性是最常用的数据验证手段,如列表、日期、数字、字符串长度等。使用办法是点击在数据区域的数据有效性,在弹出的对话框中选择允许的数据类型,用户输入时的提示信息,错误提示。

2、这里特别需要提一下的是使用引用数据的时候如果直接选择目标表格区域,这样在分享给别的同事的时候会出现路径问题。因此需要先在目标区域里定义名称。然后在引用时直接输入名称。

3、虽然数据有交效性验证对于复制粘贴的操作不能及时反馈,但是可以通过后续的校验操作来提示出错的区域(图中圆圈部分表示未通过验证的部分,包括不能为空的部分)。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-10-12

日期就是数字,所以可以用 ISNUMBER 来判断是不是日期。
公式:
这是假设A2中放的是日期。然后复制公式,筛选出“错误日期”即可。


打开编辑文件 → 右键  →单元格格式 → 数字 →  一般选择“常规”即可,也可根据需要选择其他类型,如 “文本”

第2个回答  2014-03-28
Excel中的系列“Is”类函数可以判断指定值并返回TRUE或FALSE,如ISNUMBER函数判断值是否为
数字、ISTEXT判断值是否为文本等。但Excel没有提供一个判断日期的工作表函数,如“IsDate”。如果要检测某单元格是否为日期,可以用
CELL函数,例如下面的公式判断A1单元格是否为日期:
=IF(LEFT(CELL("format",A1))="D",IF(--RIGHT(CELL("format",A1))<6,TRUE))

当A1单元格为日期格式时返回TRUE,否则返回FALSE。将该公式用于数据有效性中,可以限制用户只能输入指定的文本和任意日期。

另外,还可用VBA中的IsDate函数来判断,如下面的自定义函数:

Function Is_Date(expr)
Application.Volatile
Is_Date = IsDate(expr)
End Function

在Excel工作表界面按Alt+F11,打开VBA编辑器,单击菜单“插入→模块”,粘贴上述代码。然后在单元格中输入公式:

=Is_Date(A1)

当A1单元格包含某个日期时返回TRUE。与第一个公式不同的是,如果A1单元格为空,该公式返回FALSE。

说明:当引用单元格中的格式发生改变时,上述两个公式返回的结果不能自行更改,这时按F9键重新计算即可。
第3个回答  2014-03-28
不用这么复杂吧。
=IF(ISERR(TEXT(G3+0,"e/m/d")),"日期错误","")
第4个回答  2014-03-28
问题出在ISERROR(DATEVALUE(LEFT(G3,4)&"/"&RIGHT(G3,4))),
RIGHT(G3,4) 提取2014/13/25的时候 提到的是3/25. 显然没有问题。

希望能够帮到你。本回答被提问者采纳
相似回答