这个问题可以这么做,在做之前,先做几个假设:
假设1:两个Excel表的名称分别是s1,s2;
假设2:在s2表中插入三个列,分别是E、F、G列;
假设3:表s1和s2中,A列存放姓名、B列存放身份证.;
我们的做法是:在s2表中进行操作:
(1)在E列中输入公式=MATCH(A2,'s1'!A:A,0) (注:该公式查找s2表A列是否能够在s1表中的A列找到,若虚誉握找到,则值为s1表的行索引号)
(2)在F列中输入公式=INDEX('s1'!B:B,E2,0) (注:该公式将找到的s1表格中对应行中的身份证号码复制过来)。
(3)在G列中输入公式=IF(B2 = F2,1,0) (注:比较身份证号码是否相同,其相同,其值为1)
这样,如果两个表中若姓名相同且身份证号相同,则G列的值为1
在此说明一下,然后对所有有公式的列进行公式复制。虚拆
(4)然后再将G列通过复差庆制粘贴转换为数值
(5)然后对G列进行排序(扩展排序,要包含其它列)
这样,G列中其值为1的行会排列在一起
(6)选定s2表中G列为1的行,随你复制到表3或者其它地方。
总结:
(1)通过该方法对表s1和s2两个表中的人员顺序的排序无管紧要;
(2)若同列中存在同姓名的情况,系统可能会出现。若有解决这个问题,应该先进行身份证号的匹配,再进行姓名的匹配。这时,假设身份证号在同一列中不会重复。
假设2个表都伍裤是A1-A10是人名,B1-B10是身份证号,在第1个表人名那一行后面第一个空的单元格里,输入公式=index(第二个表的$A$1:第二个表的$A$10,MATCH(第一个表的A1&第一个表的B1,第二个表的$A$1:第二个表的$A$10&第二个表的$B$1:第二个表的$B$10,)) 同时按ctrl+shift+enter结束输入(数组公式) 然后在第1个表人名那一行后面第二个空的单元格里,输入公式=index(第二个表的$B$1:第二个表的$B$10,MATCH(第一个表的A1&第一个表的B1,第二个表的茄渗$A$1:第二个表的$A$10&第颤橘脊二个表的$B$1:第二个表的$B$10,)) 同时按ctrl+shift+enter结束输入(数组公式)
没有例子,这样表述不知道你能不能看懂,不懂得话,百度 index match
使用VLookUp函数,对两个数组或两搭镇备个数列进行比较、查找,很知毁容易解决这个问题的,具体的旅差上网查查VLookUp的用法即可。