今天要分享的是COUNTIF的高级教程,主要涉及“三维引用”、内存数组和多表计数等相关知识点。有一点的难度,请做好心理准备,篇幅较长,今天是我们第一篇,后面陆续分享!我们开始!
这个问题本身难度并不大,一般我们会通过辅助列,统计一下每个人及格了几门课,然后再统计及格科目数为4的数量!这属于我们新手阶段的操作,
我们来试试COUNTIF如何一步到位处理
格式化后的公式看起来会不会轻松点:
=SUM(
N(
COUNTIF(
OFFSET(
$B$1:$E$1,
ROW(A2:A12)-1,
),
">=60"
)
=4
)
)
1、公式共有4层嵌套,从内到外,分别是OFFSET层、COUNTIF层、N层和SUM层,下面我们依次来说一下处理的思路2、OFFSET函数层:OFFSET函数从标题($B$1:$E$1)向下,依次偏移1到11行(ROW(A2:A12)-1),也就是把数据区域,拆分成了独立的一行一行(二维平面空间独立,形成三维)3、COUNTIF函数层:COUNTIF第一参数区域,支持三维引用,对每个平面独立计数,互不干扰,所以COUNTIF部分的结果,也就是每个人几个的科目数-{3;3;2;1;4;3;3;2;4;2;1} 和 我们添加辅助列的计算结果一致如果你上面{}这种写法还看不懂,建议看一下前两日写的数组入门基础4、COUNTIF函数层的结果是一个内存数组,我们可以继续用于下一步计算。每个人的及格科目数有了,下面我们只需要判断是否等于 =4,判断的结果只有两种,等于就是TRUE,否则就是FALSE,那么我们怎么对TRUE的个数进行统计呢?
这里还涉及到一些知识:FALSE转成数值为0,TRUE转成数值为1,这里使用什么来转呢?有很多方法,其中N函数就是一种。N函数的作用是把等于4的结果转成1,不等于4的转成0!5、SUM函数层在上一步的基础上作用就非常明显了,那就是对N转换后的结果进行求和,和值也就是满足条件的个数!! 这里就是对第4步的结果求和,不再截图演示!
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。