问:excel怎么查重2个工作表的内容?
- 答:假设你表1的数据是从A1开始的,要在B列显示表2中对应A列姓名的数量,那么B1输入
=COUNTIF(表2!A:A,表1!A1)
复制B1到B1:B100 - 答:在表1的B2=VLOOKUP(A:A,[表2]Sheet1!$A:$A,1,0)
同样在表2的B2=VLOOKUP(A:A,[表1]Sheet1!$A:$A,1,0),出现#N/A的是不重复的内容。 - 答:vlookup。假设姓名存在表1sheet1A1:A100和表2A1:A200中,在表2B1输入公式=VLOOKUP(A1,'[表1]sheet1'!$A$1:$A$100,1,0),下拉。
- 答:在表2中A1输入
=VLOOKUP(A1,表1!A:A,1,0)
重复的都有了,再用筛选/自定义/不等于/“#N/A”
可以看到所有的重复姓名
问:Excel中使用Countif公式查重身份证号时遇到的问题?
- 答:为什么要连接上通配符呢,直接统计完整的身份证号就行。
=COUNTIF(A2:A3,A2) - 答:身份证号超12位了
建议用SUMPRODUCT函数来统计次数
公式类似于
=SUMPRODUCT((A$2:A$3=A2)*1) - 答:那就换一个方法呗,比如:
=SUMPRODUCT(EXACT($A$2:$A$3,A2)*1)
向下填充一下试试。
不过既然是身份证号码,那首先得检查号码的正确性啊,比如长度,比如是否符合验证,然后在使用countif查重应该不会出现你的这种问题。 - 答:增加身份证号码文本长度验证
选择A2:A100,数据,数据验证,数据验证,允许,选择,文本长度,选择,等于,输入18。 - 答:这是由COUNTIF函数只能识别16位长度的局限性所决定的,在后面加上&"*"通配符,通俗讲是延长了此函数16位识别的局限,如果长度相等就不会出现这种问题,而如果录入长度不是标准的18位,在长度小的这个上就造成误判(而这种误判一定程度上也不是坏事,至少让你知道少录入一位)。
如果不想让少录入一位这个不显示2,可以换个不使用通配符的公式=SUMPRODUCT(N(A2:A3=A2)) - 答:身份证号码是唯一的不会重复,所以查出重复就说明输入错误,
逻辑层面,分两步处理,
第一步:核对是不是有18位数据(包括字母),如果没有18位,则说明输出错误,需要核对。
第二步:对有18位的数据用countif函数直接进行统计,不用通配符*,因为证件号码的前17位相同的情况是普通存在的,所以用通配符是错误的做法。
具体公式为:=IF(LEN(A3)=18,SUM(1*ISNUMBER(FIND(A3,$A$2:A3))),"没有18位数据"),
数组公式,输入结束后需要时按下ctrl shift enter 三个键,
效果如图:
如有疑问可继续交流,问题如得到解决请给个认可!
问:使用 excel中COUNTIF这个函数对不同两列数据重复性查找,
- 答:countif函数只能判断前15位,前15位相同他就认为是相同的了
用sumproduct来解决这个问题
E1输入公式=if(sumproduct(1*(b$2:b$24=c2)),"","无重复")
下拉 - 答:=IF(COUNTIF($B$2:$B$24,C2&"*")=0,"无重复","")
15位以上的长数字,必须加“*”,强制文本,改成上面的公式 - 答:显示BC列重复的:
=IF(COUNTIF(B:B,C2),C2,"")
或=if(countif(countif(c:c,B2),B2,"")
B列中与C列不重复的显示
=if(countfi(C:C,B2),"",B2)
"" 内可加其它文字啥的 - 答:超过15位可以这样
=IF(COUNTIF($B$2:$B$24,C2&"*")=0,"无重复","")
或
=IF(COUNTIF($B$2:$B$24,C2&"*"),“”,"无重复") - 答:公式本身没有错。
应该是数据的问题。或者是工作簿里有循环引用什么的错误导致无法进行计算。
问:excel中如何用在两个表格中用countif函数对比,显示重复
- 答:=IF(COUNTIF(所有人!D:D,D1),"重复","no"),
问:countif函数的跨表格如何使用
- 答:和正常的同表使用一样,contif(区域,条件) ,也能跨文件使用,但文件必须为打开状态下才能链接
- 答:countif是指:在某个范围内满足指定条件的单元格个数。
=COUNTIF(范围,"条件")
蛮好用的,自己打开表格试试就会了!