Excel中条件计数COUNTIF,Power BI用哪个函数?

按条件进行计数是个很常见的需求,Excel有个专门的函数COUNTIF来做这种计算,PowerBI有没有类似的函数呢?

PowerBI并没有与COUNTIF功能完全相同的函数,不过做这种计算也并不是难事,下面就以这个简单的数据为例:

来看看PowerBI对类别进行计数的几种方法。

PowerQuery法

添加自定义列:

List.Count(

Table.SelectRows(

源,(x)=>x[类别]=[类别]

)[类别]

)

如果要按月来统计类别的数量,只需要增加一个筛选的条件即可:

List.Count(

Table.SelectRows(

源,(x)=>x[类别]=[类别] and x[月份]=[月份]

)[类别]

)

利用DAX添加计算列法

在数据模型中利用DAX也是同样的思路,添加计算列:

类别计数 =

COUNTROWS(

FILTER(

\’数据表\’,

\’数据表\'[类别]=EARLIER(\’数据表\'[类别])

)

)

按月来统计类别的数量可以这样写:

类别计数 按月 =

COUNTROWS(

FILTER(

\’数据表\’,

\’数据表\'[类别]=EARLIER(\’数据表\'[类别])&&

\’数据表\'[月份]=EARLIER(\’数据表\'[月份])

)

)

利用DAX建立度量值法

如果用度量值来计算类别的数量,应该怎么做呢?其实可以更简单:

类别计数 度量值 = COUNTROWS(\’数据表\’)

如果想看类别的计数,将类别作为上下文即可:

如果按月查看类别的计数,只需要上下文中加入月份:

如果是添加列的方式来计数,无论是PowerQuery自定义列还是DAX计算列,思路是一样的,只是用的函数不同而已。

而通过度量值来计数,要简单很多,关键是厘清楚分析和展现的逻辑,提供合适的上下文。

PowerBI星球 采悟

Excel中的多条件统计,掌握这几个函数公式就够了,收藏备用

多条件统计,一直是Excel中的重要组成部分,如果不掌握一定的技巧和方法,就很难做到轻松应对。

一、If+And:多条件判断。

目的:如果员工的年龄>30,且未婚,则返回“晚婚”,否则返回空值。

方法:

在目标单元格中输入公式:=IF(AND(C3>30,E3=\”未婚\”),\”晚婚\”,\”\”)。

解读:

If函数是条件判断函数,巧妙借助And进行了多条件判断,如果多个条件同时成立,则返回指定的值,否则返回另一个指定的值。

二、Sumif:单条件求和。

函数:Sumif。

功能:对满足条件的单元格求和。

语法结构:=Sumif(条件范围,条件,[求和范围])。

目的:按性别统计总“月薪”。

方法:

在目标单元格中输入公式:=SUMIF(D3:D12,J3,G3:G12)。

解读:

因为条件范围和求和范围不同,所以此处的求和范围不可省略。

三、Sumifs:多条件求和。

函数:Sumifs。

功能:对一组给定条件指定的单元格求和。

语法结构:=Sumifs(求和范围,条件1范围,条件1,[条件2范围],[条件2]……)。

解读:

参数“条件范围”和“条件”必须匹配出现,即有范围,必有条件,或者有条件必有范围。

目的:按“性别”统计相应“学历”下的总“月薪”。

方法:

在目标单元格中输入公式:=SUMIFS(G3:G12,D3:D12,J3,F3:F12,K3)。

解读:

Sumifs函数也可以实现Sumif的功能,即只有一个条件的多条件求和。

四、Countif:单条件计数。

函数:Countif。

功能:计算指定区域中满足条件的单元格数量。

语法结构:=Countif(条件范围,条件)。

目的:按“性别”统计人数。

方法:

在目标单元格中输入公式:=COUNTIF(D3:D12,J3)。

五、Countifs:多条件计数。

函数:Countifs。

功能:统计一组给定条件下符合条件的单元格数量。

语法结构:=Countifs(条件1范围,条件1,[条件2范围],[条件2]……)。

解读:

参数“条件范围”和“条件”必须成对出现。

目的:按“性别”统计相应“学历”下的人数。

方法:

在目标单元格中输入公式:=COUNTIFS(D3:D12,J3,F3:F12,K3)。

解读:

Countifs函数也可以实现Countif的功能,即只有一个条件的多条件计数。

六、AverageIfs:多条件下的平均值。

函数:Averageifs。

功能:查找一组给定条件指定的单元格的算术平均值。

语法结构:=Averageifs(数据范围,条件1范围,条件1,[条件2范围],[条件2]……)。

目的:按“性别”统计相应“学历”的平均“月薪”。

方法:

在目标单元格中输入公式:=AVERAGEIFS(G3:G12,D3:D12,J3,F3:F12,K3)。

解读:

求平均值的函数中,除了Average外,就只有AverageIfs函数,并没有Averageif函数,但用Averageifs函数也可以实现单条件下的平均值计算。

七、Lookup:多条件查询。

函数:Lookup。

功能:从单行或单列或数组中查询符合条件的值。

语法结构:

向量形式:=Lookup(查询值,查询值所在范围,[返回值所在范围])。

数组形式:=Lookup(查询值,查询值和返回值均在的数据范围)。

解读:

此处用到的多条件查询其实为Lookup的变异形式,语法结构为:=Lookup(1,0/((条件1范围=条件1)*(条件2范围=条件2)……),返回值范围)。其本质还是Lookup的向量形式。

目的:根据“部门”和“职位”查询“员工姓名”。

方法:

在目标单元格中输入公式:=LOOKUP(1,0/((B3:B12=L3)*(C3:C12=M3)),D3:D12)。

最美尾巴:

文中从多条件判断,求和、计数、以及计算平均值和查询引用等方面介绍了常用了常用的“多条件”技巧,如能熟练掌握,定能如虎添翼,轻松解决办公中遇到的“多条件”统计问题。

Countif函数的9个统计应用技巧,即学即用,简单高效

Countif函数,是最常用的条件计数函数之一,如果你仅仅会基础用法,那就Out了,小编共总结了9个统计应用技巧,即学即用,简单高效!在正式学习之前,我们先来掌握以下它的功能及语法结构。

功能:计算指定区域中满足给定条件的单元格数目。

语法结构:=Countif(条件范围,条件)。

解读:

条件范围和条件必须是对应的,否则无法得到正确的结果。

一、Countif:单条件计数。

目的:计算相应“部门”中的“员工”数量。

方法:

在目标单元格中输入公式:=COUNTIF(B$3:B$12,K3)。

二、Countif:按指定范围计数。

目的:按指定范围计算相应的员工数。

方法:

在目标单元格中输入公式:=COUNTIF(H3:H12,\”<=15000\”)、=COUNTIF(H3:H12,\”>15000\”)-COUNTIF(H3:H12,\”>25000\”)、=COUNTIF(H3:H12,\”>25000\”)。

三、Countif:对空白单元格区域计数。

目的:统计还未发“月薪”的人数。

方法:

在目标单元格中输入公式:=COUNTIF(H3:H12,\”\”)

解读:

除了上述公式外,也可以用Countblank函数实现,公式为:=COUNTBLANK(H3:H12)。

四、Countif:对非空白单元格区域计数。

目的:统计已发“月薪”的人数。

方法:

在目标单元格中输入公式:=COUNTIF(H3:H12,\”<>\”)。

解读:

符号“<>”为:不等于。

五、Countif:模糊计数。

目的:统计“学历”为“大本”和“大专”的人数。

方法:

在目标单元格中输入公式:=COUNTIF(G3:G12,\”大*\”)。

解读:

*(星号)在Excel中未通配符,可以匹配任意长度的字符。

六、Countif:判断指定的值是否重复。

目的:统计“学历”是否重复。

方法:

在目标单元格区域中输入公式:=IF(COUNTIF(G$3:G$12,G3)>1,\”重复\”,\”\”)。

解读:

如果指定的值重复,则个数肯定大于1。

七、Countif:判断指定的值是否首次出现。

目的:如果指定的“学历”首次出现,返回“是”,否则返回“否”。

方法:

在目标单元格中输入公式:=IF(COUNTIF(G$3:G3,G3)=1,\”是\”,\”否\”)。

解读:

此技巧的重点在于参数范围的相对引用,如果将公式修改为:=IF(COUNTIF(G$3:G12,G3)=1,\”是\”,\”否\”),并不能得到正确的结果。

八、Countif:判断指定的值是否最后出现。

目的:如果指定的“学历”最后一次出现,返回“是”,否则返回“否”。

方法:

在目标单元格中输入公式:=IF(COUNTIF(G3:G$12,G3)=1,\”是\”,\”否\”)。

解读:

注意参数范围的相对引用,和第7个技巧的参数范围作比较,便能得到应用技巧。

九、Countif:禁止录入重复值。

目的:禁止录入重复的“员工姓名”。

方法:

1、选定目标单元格区域,即C3:C12区域,单击【数据】菜单中【数据工具】组中的【数据验证】,打开【数据验证】对话框。

2、选择【允许】中的【自定义】,在【公式】文本框中输入:=COUNTIF(C$3:C$12,C3)=1。

3、单击【出错警告】标签,在【标题】文本框中输入:提示;在【错误信息】文本框中输入:禁止录入重复信息!并单击右下角的【确定】即可。

最美尾巴:

文中从Countif函数的特点出发,介绍了9个应用技巧,从实现效果看,Countif并不单单是单条件计数,但本质仍是单条件计数,所以在应用的过程中,要灵活对待!

本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com

点赞 0
收藏 0

文章为作者独立观点不代本网立场,未经允许不得转载。