今天教大家这个函数主要从以下6个场景来进行学习。
- 一对一对比两列数据
- 多对多对比两列数据
- 禁止重复输入
- 输入时必须包含指定字符
- 帮助Vlookup实现一对多查找
- 统计不重复值的个数
:场景1:一对一核对两列数据
【例】如下图所示,要求对比A列和D列的姓名,在B和E列出哪些是相同的,哪些是不同的。
公式:
B2 =IF(COUNTIF(D:D,A2)>0,"相同","不同")
E2 =IF(COUNTIF(A:A,D2)>0,"相同","不同")
场景2:多对多核对两列数据
【例】如下面的两列数据,需要一对一的金额核对并用颜色标识出来。
步骤1 在两列数据旁添加公式,用Countif函数进行重复转化。
=COUNTIF(B$2:B2,B2)&B2
步骤2 按ctrl键同时选取C和E列,开始 - 条件格式 - 突出显示单元格规则 - 重复值。
设置完成后后,红色的即为一一对应的金额,剩下的为未对应的。如下图所示
场景3:禁止重复录入
禁止在G列重复录入数据:
数据 - 有效性(2016版为数据验证) - 序列 - 输入公式
=COUNTIF(G:G,G1)=1
场景4:输入内容必须包括指定字符
【例】在列输入的内容,必须包含字母A。
=COUNTIF(H1,"*A*")=1
:如果输入不含A的字符就会警示并无法输入
场景5:帮助Vlookup函数实现一对多查找
【例】如下图所示左表为客户消费明细,要求在F:H列的蓝色区域根据F2的客户名称查找所有消费记录。
:步骤1 在左表前插入一列并设置公式,用countif函数统计客户的消费次数并用&连接成 客户名称+序号的形式。
A2: =COUNTIF(C$2:C2,C2)&C2
步骤2 在F5设置公式并复制即可得到F2单元格中客户的所有消费记录。
=IFERROR(VLOOKUP(ROW(A1)&$F$2,$A:$D,COLUMN(B1),0),"")
场景6:计算唯一值个数
【例】统计A列产品的个数
=SUMPRODUCT(1/COUNTIF(A2:A7,A2:A7))
总结:总的来讲Countif函数虽然只是单一条件的计数函数,但它在与其他函数搭配使用的时候,那他的作用将会变的无限大。所以说大家可以多去学习了解一下更多的函数嵌套的使用方法。
閱讀更多 excel函數與vba實例 的文章