excel range 判断日期型_EXCEL闺蜜总是说函数公式很简单,我把她拉黑了

原创作者: 流浪铁匠 转自:Excel之家ExcelHome

小伙伴们好啊,前几天咱们以IF为例介绍了几种新手容易犯的错误IF函数,你真的会用了吗?,今天介绍下初学函数公式时,其他几个容易出现的问题。

1,COUNTIF函数

虽然只有两个参数,但这是个陷阱很多的函数,很多人会在不同阶段被这个函数坑过:

1)身份证号计数

fca712da238be1a6029bf135c58acc51.png

首先就是很多人熟悉的这种身份证号计数问题,由于COUNTIF对数字类的统计规则机制很多,因此很多人第一次使用COUNTIF对身份证号这种大于15位的纯数字编码计数都会掉到坑里,COUNTIF统计机制太多光介绍这个函数就能写篇文章,所以这里只介绍解决方案,不过多介绍这个函数的统计机制:

e520e8dc0198aa067d1ad072b9fc717d.png

第二参数加上&"*",使COUNTIF强制识别为纯文本,按照常规文本的计数规则,才能正常计数。

2)COUNTIF的数组计算

780783fc65b00f9530506e0048663438.png

这种COUNTIF日期按月计数的类似问题,很多人使用COUNTIF的第一思路是如图写法,但写完后发现无法成功键入,但是并不清楚原因。

其实很简单,这是由于还不真正了解函数的参数性质。


COUNTIF的第1参数属性为range,也就是只支持引用,不支持数组。所以只能直接引用日期所在的单元格区域,不能对第一参数进行数组运算。

3)COUNTIF的多种统计机制

统计区域内字符串">1200"的个数:

6033aea234050094498aaade33674d29.png

如果有一天你要在某部分数据中统计由大于号、小于号开头,并且后面是数字的字符串个数,这个时候使用COUNTIF,结果肯定是异常的,因为第二参数的条件">1200"被识别为比较条件而不是字符串了。

而且截图公式里被计为满足条件的那个1,就是其中的数值5000,文本型的9999也被忽略,这是因为第2参数存在比较运算符时,只统计第1参数区域内的数值内容,文本型内容是被忽略的。

所以这个题的正确解法是:

74e3cc87b79ee97dc67b56e50203d6f1.png

另外注意这里的第2参数写法 "="&A31 ,很多新手的另一个错误就是写成"=A31",此时A31在双引号内,是一个文本字符串,无法返回单元格A31的引用结果的。

2)日期和时间

很多新手不了解Excel的日期定义,会奇怪自己的公式为什么不能处理和识别20200808这种日期写法。

4eab7cccea56e81389fadf436b79b466.png

原因在于,Excel的日期是从1900-1-0到当日的序列数,1900-1-1是1,最大日期是9999-12-31即2958465,日期为整数,时间为小数。

因此Excel的最大日期序列就是2958465这个不到300万的数字,8位数字根本无法直接识别为日期的,函数里通常使用TEXT将上面的不规范写法转化为可以识别的真日期:

ed2f9cb89c6cb33fb193f0408221713a.png

对Excel来说请尽量使用标准格式的日期和时间写法,否则经常因为不能被识别而出现各种问题。

7739d3a91a2b6b671c7c82760499532b.png

所以涉及这部分的问题请最好规范你的日期和时间格式。

3)关于数组运算

①数组内的0

在条件极值判断中,譬如条件最大值,没有MAXIFS的版本里很多人喜欢写成:

8744fd2815befc3fe35a2b26c2dcb9dc.png

但如果用相同写法统计指定条件的最小值,就会出现问题:

9d035daade2f42064daa43706a1cc9c3.png

因为数组运算里会产生0值,被MIN识别为整个数组内的最小值了,所以条件最小值通常都是MIN+IF:

4c1a2f142882f4b7329f73103cfa1b8c.png

这个写法里可以直接缺省IF的3参数,因为MIN可以把数组内的FALSE直接忽略。

②数组里的AND和OR

数组里多个条件不能直接使用AND或者OR,因为这两个函数无法返回内存数组:

ec7aa85657f5c7d9c4e7c17accc9f9fc.png

解法方法数组内使用 * 来替代 AND, + 替代OR ,才能返回条件判断的数组结果:

1dad379cbc9699b7853fecbf2e6ef7aa.png

4)别人家的孩子

很多时候小伙伴接收别人发来的表格打开发现,公式里有特殊前缀名:

14abe4fe6593ba53591184a78f63f614.png

这种情况下记得请不要对表格进行操作,避免公式重算,否则公式报错:

c0df615e2955bb98120eecb05cf5ceba.png

因为这是对方使用了高版本函数,而在你的版本是没有这个函数的,因此会有兼容性前缀提示,这种情况下只能保证在你打开Excel时能正常返回公式结果,但不支持重算,一旦发生重算就会报错,而且这个错误是无法用返回上一步操作撤销的。

如果存在这种情况,请尽量使用高版本的Excel。

学习函数的初级阶段,需要慢慢熟悉各种函数的参数性质(例如ref和range类型为引用,array才是数组属性)

同时,还要了解Excel的很多硬性规定(例如日期最大值9999-12-31),更需要了解一点数组运算机制,才能灵活驾驭函数公式。

别和我说函数公式很简单,否则直接拉黑……

图文制作:流浪铁匠

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值