专栏名称: 完美Excel
Excel与VBA技术学习与实践
目录
相关文章推荐
Excel之家ExcelHome  ·  XLOOKUP函数在人力资源数据管理中的应用 ·  昨天  
Excel之家ExcelHome  ·  这些公式都学会,天天加班不觉累 ·  昨天  
Excel之家ExcelHome  ·  小白妙用AI和Python搞定办公自动化 ·  2 天前  
完美Excel  ·  路途中的风景 ·  3 天前  
Excel之家ExcelHome  ·  Power BI助力小白逆袭数据分析达人 ·  6 天前  
51好读  ›  专栏  ›  完美Excel

创建ISDATE函数

完美Excel  · 公众号  · Excel  · 2024-11-28 06:20

正文

学习Excel技术,关注微信公众号:

excelperfect


标签:Excel公式

Excel中没有一个判断单元格中的内容是否是日期的函数,而VBA中有一个IsDate函数可以判断输入是否是日期。那么,如何判断单元格中的输入是否是日期呢?

如下图1所示,我们想要识别列A中单元格内容是否是日期,若是日期则在列B相应单元格中显示TRUE,否则显示FALSE

1
可以使用ExcelCell函数识别格式化为日期后的单元格,在单元格B1中输入公式:

=LEFT(CELL("format",A1))="D"

然后向下拖动单元格B1复制至数据底部,结果如上图1

公式中,提取CELL函数的第一个字符并将之与字母D比较,相等则是日期。图1中单元格C1的公式为:

=CELL("format",A1)

注意到设置为日期的单元格会返回以D开头的代码。

然而,单元格A4中并没有输入日期,只是设置了日期格式,但上面的公式仍将其判断为日期。此种情况可以使用下面的公式解决:

=AND(A1<>"",LEFT(CELL("format",A1))="D")

在单元格D1输入公式,拖动向下复制至数据底部,结果如下图2所示。

2
还可以使用VBA自定义函数来判断日期,代码如下:

Function IS_DATE(rng) As Boolean

IS_DATE = IsDate(rng)

End Function

然后,在单元格E1中输入公式:

=IS_DATE(A1)

拖动向下复制至数据底部,结果如下图3所示。

3
欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。
欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料,并通过社群加入专门的微信讨论群,更方便交流。

推荐文章
Excel之家ExcelHome  ·  XLOOKUP函数在人力资源数据管理中的应用
昨天
Excel之家ExcelHome  ·  这些公式都学会,天天加班不觉累
昨天
Excel之家ExcelHome  ·  小白妙用AI和Python搞定办公自动化
2 天前
完美Excel  ·  路途中的风景
3 天前
Excel之家ExcelHome  ·  Power BI助力小白逆袭数据分析达人
6 天前
济宁大众网  ·  好消息!济宁坐城际公交可刷银行卡了
7 年前
同道大叔  ·  4月4日十二星座运势分析
7 年前