Day17内容:统计函数Subtotal、Countif和Countifs
一、回顾目标:
1.早上听课并完成操作
2.上午完成思维导图制作
3.下午输出并打卡
4.晚上录制翻转课程
5.做到晚9点之前打卡。迟一次第二天加一次翻转输出。
6.提醒同桌打卡后分享、点赞、评论,拿到基础50分。
二、评估结果:
1.12356完成
2.4暂未完成,晚上根据到家翻转,先完成打卡为上。
三、分析过程:
1.早晨起床听课,但未操作课件,上午利用空闲时间才操作课件,今天内容比较多,说是三个统计函数,实际是N个函数,一个Subtotal函数就有11种用法,顶11个函数,还好常用的计数和求和比较简单,灵活运用即可,Countif和Countifs常规用法相对简单,难点在于一对多查询,要理解并运用函数套用,需要多多操作。
2.下午看到群里说有作业,抽空完成上传QQ,看到同桌还没有做作业,发给同桌一份,提醒她今天需要完成作业。
3.下午抽空制作思维导图,并完成的输出。
4.做到了9点之前打卡,并发给同桌提醒她及时打卡,昨天小打卡出问题,同桌打卡时显示空白,还好打卡成功了,所以要提醒同桌早点打卡,以免晚上小打卡卡顿,但同桌说在出差,只能晚上有时间。
5.晚上和朋友外出,约了我好几次了,都没去成,实在不好意思,今天陪她们逛逛。
四、总结规律
1.先完成再完美,团队第一。
2.利用好碎片化时间,时间会自然多出来。
3.提前思维很重要,能为临时任务腾出时间。
五、明日目标
1.早上听课并完成操作
2.上午完成思维导图制作
3.下午输出并打卡
4.晚上录制翻转课程
5.做到晚9点之前打卡。迟一次第二天加一次翻转输出。
6.提醒同桌打卡后分享、点赞、评论,拿到基础50分。
7.准备分享稿
引言:越是碎片化时代,越需要系统性学习,附上今天学习内容:
今天我们来学习统计函数Subtotal,Countif和Countifs。
首先学习万能统计函数Subtotal
在Excel里是这样说明Subtotal的:返回列表或数据库中的分类汇总。通常,使用“数据”菜单中的“分类汇总”命令可以容易地创建带有分类汇总的列表。一旦创建了分类汇总,就可以通过编辑 Subtotal 函数对该列表进行修改。
Subtotal有三个不同于其他函数的特点,注定在Excel函数里,起着无法代替的作用。
下面我们从6个方面来学习:
一、Subtotal基本用法
Subtotal是Excel中唯一一个能统计用户可见单元格的函数。和其他函数不同的是他不是“一个函数”,而是“一群函数”。
一个函数相当于11个函数。可用于统计平均值、计数、最大值、最小值、乘积、标准偏差、求和、方差等,详见下图。
其基本语法为:Subtotal(Function_Num,Ref1,Ref2, ...)
1.Function_Num: 为 1~11(包含隐藏值)或 101~111(忽略隐藏值)之间的数字,指定使用何种函数在列表中进行分类汇总计算。
2.Ref1……Refn:为要对其进行分类汇总计算的第1至29个命名区域或引用。必须是对单元格区域的引用。
二、Subtotal隐藏值
注意:第一个参数使用111和使用101111的区别
使用1~11,将包括手动隐藏值,如有隐藏行,结果包含隐藏行的值;
使用101~111,忽略手动隐藏值,如有隐藏行,始终排除隐藏行的值。
三、Subtotal与Sum的区别
Subtotal:只对筛选后的数据结果数据进行求和
Sum:不受筛选结果影响,会对所有数据进行求和
四、Subtotal计数:Count与Counta
Count:返回包含数字以及包含参数列表中的数字的单元格的个数
Counta:返回参数列表中非空值的单元格个数
=Subtotal(2,B2:B8) 统计包含数字单元格的个数
=Subtotal(3,B2:B8) 非空单元格数量
五、筛选后填充
Excel中经常会用到筛选,筛选后的序号往往是不连续的,如果想筛选后生成连续序号,可以通过Subtotal实现。
=Subtotal(3,$B$2:B2)*1
第一参数使用3,表示使用Count函数的计算规则,统计B列单元格数量。
注意:直接使用Subtotal函数时,筛选状态下Excel会默认将末行当做汇总行,公式中 *1,就是为了避免筛选时出现末行。
六、避开同类计算
Subtotal函数不会统计由Subtotal计算出来的数值,即遇到同类就避开了。
总结
Subtotal有三个特点:
1.如果在 Ref1, Ref2,… 中有其他的分类汇总(嵌套分类汇总),将忽略这些嵌套分类汇总,以避免重复计算。也就是在数据区域中有Subtotal获得的结果将被忽略!
2.当 Function_Num 为从 1 到 11 的常数时,Subtotal 函数将包括通过“格式”菜单的“行”子菜单下面的“隐藏”命令所隐藏的行中的值。当您要分类汇总列表中的隐藏和非隐藏值时,请使用这些常数。当 Function_Num 为从 101 到 111 的常数时,Subtotal 函数将忽略通过“格式”菜单的“行”子菜单下面的“隐藏”命令所隐藏的行中的值。当您只分类汇总列表中的非隐藏数字时,使用这些常数。 但不论使用什么 Function_Num 值,Subtotal 函数都会忽略任何不包括在筛选结果中的行。 而Subtotal 函数不适用于数据行或水平区域。隐藏某一列不影响分类汇总。但是隐藏分类汇总的垂直区域中的某一行就会对其产生影响。
3.可以代替上面说的11种函数,当有上面说的两种特点情况时,就可以使用Subtotal来完成。
所以在需要处理隐藏数据相关的应用时,Subtotal是其它函数无法代替的,也是Subtotal最大最重要的特点。
下面我们来学习统计函数Countif和Countifs.
一、认识函数Count、Counta、Countblank
1.Count: 计算参数列表中的数字项的个数
不能转换为数字的文本、空白单元格、逻辑值、错误值都不计算在内
①如果参数为数字、日期或者代表数字的文本,则将被计算在内;
②逻辑值和直接键入到参数列表中代表数字的文本被计算在内;
③如果参数为错误值或不能转换为数字的文本,则不会被计算在内;
④如果参数是一个数组或引用,则只计算其中的数字。数组或引用中的空白单元格、逻辑值、文本或错误值将不计算在内。
2.Counta:计算参数列表中非空的项个数
参数值可以是任何类型,包括空字符(""),但不包括空白单元格。
①参数值可以是任何类型,可以包括空字符(""),但不包括空白单元格;
②如果参数是数组或单元格引用,则数组或引用中的空白单元格将被忽略;
③如果不需要统计逻辑值、文字或错误值,请使用函数COUNT。
3.Countblank: 计算参数列表中空单元格的个数
空白单元格和空文本("")会被计算在内。
①包含返回 ""(空文本)的公式的单元格会计算在内;
②包含零值的单元格不计算在内。
二、Countif基本用法
Countif:对区域中满足单个指定条件的单元格进行计数
基本语法为:Countif(Range,Ctrteria)
Range:必需。表示要统计数量的单元格,Range可以包含数字.数组.或数字的引用
Ctrteria:必需。用于决定要统计哪些单元格的数量的数字.表达式.单元格引用或文本字串符。
注意:
1.COUNTIF函数的第一参数绝对引用,是为了公式向下填充时,保持引用范围不变;
2.COUNTIF函数的第二参数直接使用相对引用待统计单元格,公式向下填充时,D2依次变为D3、D4……
三、Countifs基本用法
Countifs函数的作用是对区域中满足多个条件的单元格计数,即多条件计数。
其基本语法为:Countifs(Criteria_Range1,Criterial,[Criteria_Range2,Criterial2,]_)
COUNTIFS(条件区域1,条件1,条件区域2,条件2…)
条件区域1:必需。在其中计算关联条件的第一个区域。
条件1:必需。要进行计数的第一个条件。
条件区域2:可选。在其中计算关联条件的第二个区域。
条件2:可选。要进行计数的第二个条件。
四、模糊条件计数
结合通配符“*”和“?”
如:统计“张”姓次数:=COUNTIF(明细表!C:C,"张*")
统计“张”姓A产品次数:=COUNTIFS(明细表!C:C,"张*",明细表!D:D,"A")
五、文本.非空.真空数据个数
统计文本单元格个数=COUNTIF($A$2:$A$10,"*")
统计文本单元格个数=COUNTIF($A$2:$A$10,"<>")
统计真空数据个数=COUNTIF($A$2:$A$10,"=")
注意:
“*”代替任意多个字符
“<>”代表非空数据
“=”代表真空数据
六、按产品统计序号
1.使用Countif给产品排序
=COUNTIF($C$2:C2,C2)
注意:COUNTIF函数的统计区域是$C$2:C2,第一个C2是行绝对引用,第二个C2,是相对引用;当公式向下复制时,就会变成$C$2:C3.$C$2:C4……一个不断扩展的区域,从这个动态区域中统计C列产品的个数
2.再使用名称&序号来进行连接,命名产品序号
=D2&COUNTIF($D$2:D2,D2)
即使产品的顺序是打乱排列的,方法也一样
七、Countif函数+Vlookup函数一对多查询
操作步骤:
1.增加辅助列为产品进行命名排序,使产品序号唯一,方便进行查找;
C2&COUNTIF($C$2:C2,C2)
2.明确我们的查找值为”含有A*"的产品,需要生成以"A1.A2……"的连续序号去查找,可使用函数ROW()来生成,表示现在所在的的单元格的所处的行
3.生成目标产品连续序号后,使用Vlookup来进行精确查找,此时向右拖动数据时会出现”#N/A“,可嵌套使用函数Column()列来调整
4.为了将错误值屏蔽,最后我们使用IFERROR函数来进行隐藏
=IFERROR(VLOOKUP($F$2&ROW(A1),$A$1:$D$15,COLUMN(B1),0),"")
解决一对多查找的关键点是把重复的值用Countif变成不同的,然后用Vlookup函数再进行查找。
掌握这个思路很重要
七、数据验证
1.不能录入重复
数据-数据验证-自定义- =COUNTIF($B$2:$B$21,B2)=1
2.只能输入以某字段开头/结尾的文本
数据-数据验证-自定义=COUNTIF(F2,"A*")=1
以上就是今天学习的统计函数,比较多,先慢慢消化,再学以致用,逐步走向高效办公。