excel函数去重_excel去重函数

在日常工作问题中,经常会遇到一个问题,当你呼哧呼哧处理了大半天的数据后才发现,原始数据好多重复的,导致你得到的结果全部错误……

顿时,想砍人的心都有了,心理阴影面积无穷大……

当然,胖斯基也遇到过,不过秉着吃一堑长一智的精神,后来凡是遇到数据问题处理,先检查是否有重复项,待处理完后再继续往下。

So,我们今天的主题是面对重复值,你如何处理?当然处理重复值的方法有很多,今天重点从countif函数入手,着手界面针对不同重复情况下的问题处理。

为了便于问题的逐步深入,我们先从最基本,最简单的入手。

用Excel自带功能,进行重复值的判断,如下:

上面的办法的确标记出了重复值,但是比如要判断重复几次?第几次重复?只保留唯一呢?又该如何处理?

函数COUNTIF,不陌生,其含义是:COUNTIF(rang,criteria),翻译成人话就是说:这个函数是用来统计某一个区间,满足某个条件的个数,其规范:COUNTIF(区域,条件),看着比较简单,看看它的应用。

1. 判断用户姓名是否重复

公式:=IF(COUNTIF($A$3:$A$14,A3)>1,"重复","")

说明:

COUNTIF($A$3:$A$14,A3)很好理解,在A3:A14区间范围内查找A3,看其出现几次;利用IF增加判断,如果大于1,显然是重复。

2. 判断用户是否重复,若是重复,且非首次出现则标记为重复,否则空白

公式:=IF(COUNTIF($A$3:A3,A3)>1,"重复","")

说明:COUNTIF($A$3:A3,A3)相对于问题1,有点变化,就是区间的范围发生了变化,变成了$A$3:A3,这个需要看【$】的理解了,在胖斯基看来,【$】像大头钉,钉住某个单元格,让其不动。所以$A$3:A3可以理解为,起始范围A3是固定不变的,结束范围A3是变化的,可以为A4,A5,A6…… 具体看公式的拖拽范围。

所以上述公式可以理解为,从A3开始,逐步A3:A3,A3:A4,A3:A5……等形成一个变化的增大区间,在借助其条件,来统计个数。由于是逐渐变大范围,所以一个数据如果重复,那其第1次出现,其结果为1,第2次,第3次,则逐渐为2,3,……n,所以利用IF来判断就可以解决问题。

3. 判断用户是否重复,若是重复,且非最后出现则标记为重复,否则空白

公式:=IF(COUNTIF(A3:$A$14,A3)>1,"重复","")

说明:COUNTIF(A3:$A$14,A3)可以理解为固定住范围区间的结尾,而范围区间的开始则是个变化值。

为了便于理解,我们将范例1-3的核心部分做一下对比,便于理解。

关注公式部分

如果你看懂了,相信9*9乘法表,你也会了,如下:

公式略,如果想了解,请回复胖斯基

4. 名单中不重复的人数一共有几个?

公式=SUM(1/COUNTIF(A3:A14,A3:A14)),其为数组公式,三键一起按

说明:COUNTIF(rang,criteria)第2个参数是一个条件值,但是此时COUNTIF(A3:A14,A3:A14),第2个参数是一个区间,故此时是一个数组公式。

即在A3:A14区域中,其区域下的每一个值都要去判断出现了几次,得到结果如下:{3;3;3;1;2;2;3;3;3;1;2;2},再用1来除,得到其倒数,={0.33;0.33;0.33;1;0.5;0.5;0.33;0.33;0.33;1;0.5;0.5},再SUM求和,即可得到结果。

5. 提取名单中不重复人的姓名

INDEX(A:A,MIN(IF(COUNTIF($B$2:B2,$A$3:$A$14)=0,ROW($A$3:$A$14),4^8)))&""

说明:

COUNTIF($B$2:B2,$A$3:$A$14)重点在这里,在B2开始的区域里面,逐渐扩大区域,在该区域中去判断A列的数据出现几次,如果为0次,则记录其行号ROW($A$3:$A$14),反之记录4^8(65536,足够大的一个数据);

再用Min函数,随着单元格的拖动来形成一个新的数组,最后借助Index来取出A列数据。

例5 是在Excel的文本去重中是比较常用的,这里简要描述,待后续详细讲解此类方法。

胖斯基说:

想要学好Excel,就从这些简单的函数开始吧!也许万事开头难,没准坚持坚持就变成大神了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/265764.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解决网站请求速度慢的一些方法

开门见山,网站请求反应速度慢首先考虑服务器问题。 我在开发中遇到的就是服务器实例限制cpu占用10%以内访问正常,超出则限制访问速度,也就是网站请求速度慢 具体和阿里工程师聊天截图如下: 按照对方说的,升级了相关配置…

Windows Server 2012 在个人终端上使用的推荐设置

Windows Server 2012,也就是 Windows 8 的服务器版本,相对于 Windows 8 企业版而言,增强了作为服务器的功能,弱化了作为终端系统的功能。   目前微软官方提供了 Windows 8 企业版(90 天评估期)和 Windows…

解决crontab 定时任务加载失败

0x0 系统:centos7内核:3.10.0-1160.15.2.el7.x86_64 今天用crontab创建定时任务,在测试时发现任务并没有按预期执行, 使用systemctl status crond 查看crond的状态 > # systemctl status crond …

Java高级 —— 泛型

目录泛型概念泛型可设置多个类型参数泛型继承泛型接口限制泛型可用类型泛型通配声明泛型方法泛型方法限制泛型可用类型泛型概念 问题引入:如果我们需要产生多个对象,每个对象的逻辑完全一样,只是对象内的成员啊变量的类型不同。那我们如何去…

python显示目录中的文件_Python中的文件和目录操作实现

Python中的文件和目录操作实现对于文件和目录的处理,虽然可以通过操作系统命令来完成,但是Python语言为了便于开发人员以编程的方式处理相关工作,提供了许多处理文件和目录的内置函数。重要的是,这些函数无论是在Unix、Windows还是…

wopihost

项目介绍 基于wopi协议开发的WopiHost, 支持word, excel,ppt(仅支持预览)等文档的预览和编辑。 运行环境 需要安装Office online 2016才可以使用,基于jdk 1.8,spring boot开发。 使用案例 word文档预览 http://[owas.domain]/wv/wordviewerfr…

java 人物属性

写代码,可以浏览人物的属性:package day14; import java.awt.BorderLayout; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.ImageIcon; import javax.swing.JComboBox; im…

龙芯3a4000 交叉编译链接错误

0x0 交叉编译平台: amd ubuntu20交叉编译目标平台:LOONGSON 3A4000交叉编译器:7.3.1 在编译时出现如下报错: mips-linux-gnu-ld -r -Lmips-loongson3a-app-gcc/lib -o octeontx_fpavf.o.o octeontx_fpavf.o.pmd.o octeontx_fp…

安卓APP_ Fragment(5)—— Fragment + ViewPager2 模拟微信首页 (2)两者联动翻页

摘自:安卓APP_ Fragment(5)—— Fragment ViewPager2 模拟微信首页 (2)两者联动实现翻页 作者:丶PURSUING 发布时间: 2021-04-22 00:11:43 网址:https://blog.csdn.net/weixin_4474…

stmmac描述符的结构和初始化

stmmac 描述符(Descriptors) stmmac的描述符有两个个模式,分别是ring模式和chain模式,根据特性的不同支持,描述符又有以下3个形式norm、Alternate 、 Enhanced。下面主要讲下ring模式下的Enhanced描述符结构&#xff…

Android中利用productFlavors配置多渠道

build.gradle(app)设置 android {flavorDimensions "default"productFlavors{//不同渠道360{dimension "default"//替换AndroidManifest中的值manifestPlaceholders [channel_value:"360"]}qq{dimension "default"//替换AndroidManif…

Ubuntu服务器安装snmpd(用于监控宝)

2019独角兽企业重金招聘Python工程师标准>>> 一、安装snmpd: sudo apt-get install snmpd 二、修改配置文件 vi /etc/snmp/snmpd.conf 找到这样的两行 agentAddress udp:127.0.0.1:161 #agentAddress udp:161,udp6:[::1]:161 将他们的注释交换一下 #…

安卓APP_ 四大基本组件(1)—— Activity

摘自:安卓APP_ 四大基本组件(1)—— Activity 作者:丶PURSUING 发布时间: 2021-04-22 15:56:18 网址:https://blog.csdn.net/weixin_44742824/article/details/116006048 配合菜鸟教程食用效果更佳&#xf…

bootdefault和configuration_springboot常用注解、包引入和自动配置功能解读

springboot使用起来确实很方便,做到开箱即用,减少了许多繁琐的配置。不过在使用过程中时常会想,为啥会这样方便,springboot为我们做哪些工作。或者是我们在使用的过程中,会遇到springboot不满足的情况,我们…

radare2 常用操作总结

radare2 简介 radare2是一个用C语言编写的跨平台的二进制分析工具,支持ARM、MIPS、X86等平台,支持分析多种格式的二进制文件如ELF、Mach-O、Fatmach-O, PE、PE、 MZ、 COFF等,同时也支持多种操作系统如Windows (since XP)、GNU/Linux、GNU/D…

Could NOT find SDL_image (missing:SDL_IMAGE_LIBRARIES SDL_IMAGE_INCLUDE_DIRS)

sudo apt-get install libsdl-image1.2-dev转载于:https://www.cnblogs.com/sea-stream/p/9792496.html

Erlang TCP Socket的接收进程的2种方案

转自:http://blog.csdn.net/summerhust/article/details/8740973 一旦打开了一个使用TCP连接的套接字,它就始终保持打开状态,直至任何一方关闭它或因为一个错误而终止。在建立一个连接时,一般为…

序列化与反序列化(1)Serializable —— Java原生态方法

摘自:序列化与反序列化(1)Serializable —— Java原生态方法 作者:丶PURSUING 发布时间: 2021-05-08 19:20:21 网址:https://blog.csdn.net/weixin_44742824/article/details/116503261 本文为学习笔记&…

极路由4刷机

准备工作 https://www.right.com.cn/forum/thread-161906-1-1.html https://breed.hackpascal.net/ 在第二个链接里下载路由器对应的breed固件,固件的说明见第一个链接,下文以极路由4为例演示 由于极路由官方挂了,无法进行root&#xff0…

背景颜色及背景图片相关的属性

1.background-color   设置背景颜色,取颜色值   注意:     1.所有元素默认的背景颜色都是透明色,新建窗口的白色不是body的背景色,是浏览器渲染的     2. 背景颜色从边框位置开始绘制     3. 如果元素添加内边距&…