【虐心】统计符合条件的不重复单元格个数

昨天有个网友在公众号留言问我~

统计符合B列条件的A列不重复的计数(多个重复算一个)

我读了两边,领悟了他的问题,就是统计符合条件的另外一列的不重复单元格个数!

这个问题有三个关键点

1、符合条件

2、另外一列

3、不重复

先说说如何解决符合条件的问题!

这个比较简单,Countif函数可以完美搞定~

=COUNTIF(B1:B9,D2)

=COUNTIF(判断的列,判断条件)

好吧~感觉帮助不大,这个函数解决不了问题哇!

这个问题的关键是什么呢?是解决如何统计非重复值的问题!

物料管理小能手(统计不重复数据)

建议在阅读下面的文字前,先点击上面那一行链接,先看看那篇文章的第一部分~

上面的文章介绍了两种统计非重复值的思路,我们接下来分享其中的一种!

我们如何来统计A列的非重复单元格个数呢?

C列使用的是match函数(找什么,在哪里找,0)

返回第一个参数在第二个参数中首次出现的位数

当A列中数据重复的时候,返回的值是相同的~

D列使用的是Row函数(单元格)

返回单元格所在的行数

由1到9 返回对应的值!

如果A列中的值第一次出现的时候则C列与D列值相等,反之不等

所以我们统计C列与D列相等的单元格个数就可以知道A列的非重复值数量

公式:{=SUM(--(MATCH(A1:A9,A1:A9,0)=ROW(A1:A9)))}

公式大括号括起来,证明编辑函数后是Ctrl+Shift+Enter键结束的,大括号是自动生成的,不是手动输入的哦!

N1:MATCH(A1:A9,A1:A9,0)

返回值:{1;1;3;4;5;6;7;7;9}

返回A列中在A列第一次出现的位数

N2:ROW(A1:A9)

返回值:{1;2;3;4;5;6;7;8;9}

返回A列每个单元格的行数

N3:=连接两个函数

{TRUE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;FALSE;TRUE}

如果相等为True反之为Flase

N4:--

{1;0;1;1;1;1;1;0;1}

两个负号实现的效果就是将布尔值转化为0、1

N5:sum

7

将1进行汇总求和

好啦!今天就这样啦~

原问题是解决一列符合某个条件另外一列的非重复值!

我们简化一下,改为B列等于山东的,A列非重复值!

那我们思考一下,现在变成B列需要判断,求A列非重复值!

那我们先创建一个辅助列,C列等于A与B列连接在一起!

然后创建个辅助列D,用A列与文本“山东”连接在一起

假如我们用D列的每个值求在C列中出现的位置会怎样?

发现如果B列复合山东这个条件的有返回值,反之返回#N/A

那我们优化一下函数,如果没有查到,我们让他返回0

外面嵌套一个iferror函数即可,这样如果没有就返回0!

此时如果拿这个函数和Row函数对比,相等的就计数。

是否和刚刚的某一列求不重复个数值就一样了?

{=SUM(--(IFERROR(MATCH(D1:D9,C1:C9,0),0)=ROW(A1:A9)))}

但是我们使用了C列、D列两个辅助列

C列是怎么来的?是A列&B列

D列呢? 是A列&"山东"

所以我们将C列、D列替换一下

最终版公式!

{=SUM(--(IFERROR(MATCH(A1:A9&"山东",A1:A9&B1:B9,0),0)=ROW(A1:A9)))}

欢迎观看这个艺术品~

如果你理解了某个列的非重复值统计逻辑!

加上判断其实就是将两列合并在一起,两列当做一列进行判断~

就酱~

原文发布于微信公众号 - 阿凯的Excel(akexcel)

原文发表时间:2018-01-02

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏数据小魔方

查询函数|lookup函数家族

今天跟大家分享的是查询函数——lookup函数家族! 查询函数是excel函数中使用频繁程度与求和函数不相上下的功能。 excel中关于查询功能的函数主要有以下...

3304
来自专栏python学习之旅

Python笔记(七):字典、类、属性、对象实例、继承

(一)  简单说明    字典是Python的内置数据结构,将数据与键关联(例如:姓名:张三,姓名是键,张三就是数据)。例如:下面这个就是一个字典 {'姓名':...

3495
来自专栏小樱的经验随笔

洛谷 P1598 垂直柱状图【字符串+模拟】

P1598 垂直柱状图 题目描述 写一个程序从输入文件中去读取四行大写字母(全都是大写的,每行不超过72个字符),然后用柱状图输出每个字符在输入文件中出现的次数...

2815
来自专栏静晴轩

JavaScript 字符串实用常操纪要

JavaScript 字符串用于存储和处理文本。因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作...

3597
来自专栏CDA数据分析师

学会这8个(组)excel函数,轻松解决工作中80%的难题

文 | 兰色幻想-赵志东 函数是excel中最重要的分析工具,面对400多个excel函数新手应该从哪里入手呢?下面是实际工作中最常用的8个(组)函数,学会后工...

1787
来自专栏企鹅号快讯

MySQ基础入门系列之——字符与日期数据处理

今天这一篇分享MySQL中的字符串处理工具与日期时间处理,这一部分内容虽然看似不多,但是往往是输出处理中的的痛点。 我的MySQL数据库中已经建好了一个包含两列...

1770
来自专栏小詹同学

Leetcode打卡 | No.017 电话号码的字母组合

欢迎和小詹一起定期刷leetcode,每周一和周五更新一题,每一题都吃透,欢迎一题多解,寻找最优解!这个记录帖哪怕只有一个读者,小詹也会坚持刷下去的!

1023
来自专栏静晴轩

必备之常用正则表达式

熟练而优雅的使用正则,对于程序员来讲,实在太有意义了(即便非此类者,也是好处多多);它辅助处理复杂的文本查询和字符串操作,不仅能用之于代码,还能雅之于编辑器,浏...

3105
来自专栏Stone的专栏

一篇文章精通 VLOOKUP 函数

相信不少人看到标题,立即嗤之以鼻,VLOOKUP 谁不会?是的,大家都会,但用的好的人不多。相信我,这篇文章一定可以算得上通俗易懂,又有深度的一篇文章,熟练掌握...

1100
来自专栏守候书阁

实例感受-es6的常用语法和优越性

前几天,用es6的语法重写了我的一个代码库,说是重写,其实改动的并不多,工作量不大。在重写完了的时候,就个人总结了一下es6常用的一些常用的语法和比es5优越的...

603

扫码关注云+社区