主要观点总结
文章主要介绍了在Excel中如何判断单元格中的内容是否是日期,包括使用公式和VBA函数的方法。
关键观点总结
关键观点1: Excel中判断单元格内容是否为日期的公式方法
通过Excel的Cell函数识别格式化为日期后的单元格,使用公式=LEFT(CELL("format",A1))="D"来判断。
关键观点2: Excel中处理特殊情况的方法
当单元格设置了日期格式但未输入日期时,使用公式=AND(A1 < >"",LEFT(CELL("format",A1))="D")来处理。
关键观点3: VBA函数在判断日期中的应用
介绍使用VBA自定义函数IS_DATE来判断日期的方法,包括函数的编写和在单元格中的应用。
关键观点4: 社群交流和获取更多资料的信息
鼓励读者参与知识星球的完美Excel社群进行技术交流和提问,并获取更多电子资料。
正文
学习Excel技术,关注微信公众号:
excelperfect
Excel
中没有一个判断单元格中的内容是否是日期的函数,而
VBA
中有一个
IsDate
函数可以判断输入是否是日期。那么,如何判断单元格中的输入是否是日期呢?
如下图
1
所示,我们想要识别列
A
中单元格内容是否是日期,若是日期则在列
B
相应单元格中显示
TRUE
,否则显示
FALSE
。
可以使用
Excel
的
Cell
函数识别格式化为日期后的单元格,在单元格
B1
中输入公式:
=LEFT(CELL("format",A1))="D"
然后向下拖动单元格
B1
复制至数据底部,结果如上图
1
。
公式中,提取
CELL
函数的第一个字符并将之与字母
D
比较,相等则是日期。图
1
中单元格
C1
的公式为:
注意到设置为日期的单元格会返回以
D
开头的代码。
然而,单元格
A4
中并没有输入日期,只是设置了日期格式,但上面的公式仍将其判断为日期。此种情况可以使用下面的公式解决:
=AND(A1<>"",LEFT(CELL("format",A1))="D")
在单元格
D1
输入公式,拖动向下复制至数据底部,结果如下图
2
所示。
还可以使用
VBA
自定义函数来判断日期,代码如下:
Function
IS_DATE(rng) As Boolean