这是由COUNTIF函数只能识别16位长度的局限性所决定的,在后面加上&"*"通配符,通俗讲是延长了此函数16位识别的局限,如果长度相等就不会出现这种问题,而如果录入长度不是标准的18位,在长度小的这个上就造成误判(而这种误判一定程度上也不是坏事,至少让你知道少录入一位)。如果不想让少录入一位这个不显示2,可以换个不使用通配符的公式=SUMPRODUCT(N(A2:A3=A2))
如下图,在计数辅助列输入公式=COUNTIF($A$2:$A$24,A2&"*")下拉,不是1的就是表示有重复的。
表1中 A1=姓名,B1=身份证,C1显示重复 "是","否"表2中 A1=姓名,B1=身份证C1=if(isna(vlookup(A1,表2!A:B,2,0),"否","是")在任一表如表2新增一列,如E列,E2输入公式:=IF(ISERROR(VLOOKUP(D2,1表!$A$2:$A$10000,1,FALSE)),"","重复")下拉公式到最后一行,所有显示"重复"的就是重复的
假设身份证号码在B列在C1输入公式=IF(COUNTIF(B:B,B1)>1,"重复","")下拉即可
左边那个每行的在一个单元里?你得用VBA才能自动完成了
表1中 A1=姓名,B1=身份证,C1显示重复 "是","否"表2中 A1=姓名,B1=身份证C1=if(isna(vlookup(A1,表2!A:B,2,0),"否","是")在任一表如表2新增一列,如E列,E2输入公式:=IF(ISERROR(VLOOKUP(D2,1表!$A$2:$A$10000,1,FALSE)),"","重复")下拉公式到最后一行,所有显示"重复"的就是重复的
对于应用公式不方便的,可以通过曲线方式救国。因为EXCEL表对于超过15位的纯数字会直接忽略后面的位数。此时我们只需要对身份证号列进行加工即可查重。对每个身份证号前面都加上X。方法:创建列B。列内数字均为X 再创建列临时列公式=B&身份证号所在列。即可生成临时列所有身份证前有X。此时对该临时列进行重复值查询即可。
增加身份证号码文本长度验证选择A2:A100,数据,数据验证,数据验证,允许,选择,文本长度,选择,等于,输入18。
可以使用高级筛选。(当然方法是很多的)1表中身份证号表头名称要跟2表中身份证表头名称一致。如1表中身份证号这一列表头为“身份证号”,2表中身份证号这一列表头也要为“身份证号”。接下来就可以如下操作:若为2007版可按 数据、高级筛选,启用高级筛选工具。在列表区域中选中2表所有数据区域,条件区域中选1表中身份证号这一列有数据的单元格。这样就可以得到你想要的数据了。当然还要把数据放到其他地方可以选择。
回答 先将两份Excel文件打开。先去掉空格,避免比对错误:点击开始→查找和选择→替换→在“查找内容处”按一下空格键→点击“全部替换”(两个表格都要操作)。当完全去掉空格时,会出现下图: 比对名字或身份证号码: 在第一行数据右边空白处,点击fx(插入)公式,选中VLOOKUP(如果常用函数中找不到请选择“全部”)如下图: 点击确定。弹出函数参数窗口:(重点来啦!重点来啦!重点来啦!) ①第一行选中要比对的一列身份证号码(以身份证号码为例,因为身份证号码是世界上独一无二的) ②第二行选中要一起比对的身份证号码 ③第三行填“1” ④第四行填“0” 如图: 点击确定。 出现一串同样的身份证号码(也就是两边存在这个号码)。假如有成百上千个身份证号码要比对怎么办呢?请将鼠标移到身份证号码右下角,当变成实心“十”字时,双击左键即可显示下面所有数据的比对结果。 说明:出现身份证号码的地方是指两边都存在,出现“N/A”就表示另外一个EXCEL表格中不存在(即无)。 更多10条
左边那个每行的在一个单元里?你得用VBA才能自动完成了
表1只有A2有身份证,表2是D列都是身份证号么?还是表1有不止一个身份证号?如果表1只有一个身份证号且在A2,那么可以在表2全选D列,然后选则格式-条件格式,单元格数值选择“等于”,数值那边填=Sheet1!$A$2,下面的格式选一下颜色,确定,这样如果表2D列有和表1A2相同的身份证的话颜色就不一样了
如下图,在计数辅助列输入公式=COUNTIF($A$2:$A$24,A2&"*")下拉,不是1的就是表示有重复的。
首先,你这不打马赛克就贴出身份证号是不对的,泄漏个人隐私:其次,excle之所以和word有区别就是因为excle可以进行逻辑运算,而excel的逻辑运算的单位就是“单元格”,每个单元格是一个数据,我们可以对这些单元格的数据进行各种运算,象你目前这种把所有数据混在一个单元格的方式本身就是对excel的错误使用;解决方法,在你提取到数据后,你需要对数据进行处理,让每个数据独占一个单元格,这样你在后续的数据处理上才能得心应手。
假设身份证号在B列B1起,请在空白列如C列的C1输入公式:=countif(b:b,b1)下拉复制,结果是大于1的,身份证号就是重复的。 或:=if(countif(b:b,b1)>1,"重复","")
在任一表如表2新增一列,如E列,E2输入公式:=IF(ISERROR(VLOOKUP(D2,1表!$A$2:$A$10000,1,FALSE)),"","重复")下拉公式到最后一行,所有显示"重复"的就是重复的
增加身份证号码文本长度验证选择A2:A100,数据,数据验证,数据验证,允许,选择,文本长度,选择,等于,输入18。
首先,你这不打马赛克就贴出身份证号是不对的,泄漏个人隐私:其次,excle之所以和word有区别就是因为excle可以进行逻辑运算,而excel的逻辑运算的单位就是“单元格”,每个单元格是一个数据,我们可以对这些单元格的数据进行各种运算,象你目前这种把所有数据混在一个单元格的方式本身就是对excel的错误使用;解决方法,在你提取到数据后,你需要对数据进行处理,让每个数据独占一个单元格,这样你在后续的数据处理上才能得心应手。
对于应用公式不方便的,可以通过曲线方式救国。因为EXCEL表对于超过15位的纯数字会直接忽略后面的位数。此时我们只需要对身份证号列进行加工即可查重。对每个身份证号前面都加上X。方法:创建列B。列内数字均为X 再创建列临时列公式=B&身份证号所在列。即可生成临时列所有身份证前有X。此时对该临时列进行重复值查询即可。
在任一表如表2新增一列,如E列,E2输入公式:=IF(ISERROR(VLOOKUP(D2,1表!$A$2:$A$10000,1,FALSE)),"","重复")下拉公式到最后一行,所有显示"重复"的就是重复的