两份EXCEL表格里根据相同字段提取完整数据

两份表格里有相同的姓名和身份证号的数据,其他不一样,几千条数据..要求按照其中一个表格类型提取另一个表格里姓名或身份证号码相同的
打个比方,A表里有(姓名,身份证,日期),B表里有 (地点,身份证,时间)
A和B的(身份证)下的数据有相同的,请把相同身份证的部分提取出来,格式保留A表的,谢谢大家

    打开需要处理的列表,如图所示,可以看出上下两个数据表中存在相同的两个部分,为了方便讲解和最后比对,数据是一眼就能看出相同部分的,但是在实际操作中一般数据比较杂乱。

    在原数据列表的右边通过复制-粘贴添加辅助标题栏,找出的相同部分会在此显示。

    在工具栏中找到“数据”——“筛选”——“高级”。

    弹出如图所示对话框,在“列表区域”中选取数据较少的一组数据。

    在“条件区域”中选取另一组数据。

    在对话框中选中“筛选结果复制到其他位置”

    在“复制到”一栏中选中步骤2添加的辅助工具栏。

    点击确定,完成。


温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-12-06

用vlookup 函数,建议用两列数据一起查询,即姓名和身份证两列数据在两表中完全一样才引用,否则结果就是错误值,你可以筛选出来检查是否有其他问题。我简单上传一份示例文件的图片里面有公式和结果,比较清晰。有一点excel功底的话应该能看懂,需要插入一个辅助列里面填充两列数据合并值。看了再说吧,这个东西我也是刚刚前几天在摸索着用。基本上能达到效果,数据行不怕多,就是怕两组数据有细微差别,他这个只能精确查找,只要有细微不同就不行。可能会需要调整初始表格,比如去空格等。

第2个回答  2010-12-06
利用VLOOKUP函数

VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)

Lookup_value 为需要在数组第一列中查找的数值。Lookup_value 可以为数值、引用或文本字符串。

Table_array 为需要在其中查找数据的数据表。可以使用对区域或区域名称的引用,例如数据库或列表。

如果 range_lookup 为 TRUE,则 table_array 的第一列中的数值必须按升序排列:…、-2、-1、0、1、2、…、-Z、FALSE、TRUE;否则,函数 VLOOKUP 不能返回正确的数值。如果 range_lookup 为 FALSE,table_array 不必进行排序。

通过在“数据”菜单中的“排序”中选择“升序”,可将数值按升序排列。

Table_array 的第一列中的数值可以为文本、数字或逻辑值。

文本不区分大小写。

Col_index_num 为 table_array 中待返回的匹配值的列序号。Col_index_num 为 1 时,返回 table_array 第一列中的数值;col_index_num 为 2,返回 table_array 第二列中的数值,以此类推。如果 col_index_num 小于 1,函数 VLOOKUP 返回错误值值 #VALUE!;如果 col_index_num 大于 table_array 的列数,函数 VLOOKUP 返回错误值 #REF!。

Range_lookup 为一逻辑值,指明函数 VLOOKUP 返回时是精确匹配还是近似匹配。如果为 TRUE 或省略,则返回近似匹配值,也就是说,如果找不到精确匹配值,则返回小于 lookup_value 的最大数值;如果 range_value 为 FALSE,函数 VLOOKUP 将返回精确匹配值。如果找不到,则返回错误值 #N/A。

说明

如果函数 VLOOKUP 找不到 lookup_value,且 range_lookup 为 TRUE,则使用小于等于 lookup_value 的最大值。
如果 lookup_value 小于 table_array 第一列中的最小数值,函数 VLOOKUP 返回错误值 #N/A。
如果函数 VLOOKUP 找不到 lookup_value 且 range_lookup 为 FALSE,函数 VLOOKUP 返回错误值 #N/A。

具体可参阅函数帮助
第3个回答  2010-12-06
可以使用vlookup函数,比如有sheet1,sheet2两个表格,sheet1与sheet2中的姓名和身份证号分别在A列和B列,sheet2的C列为职位,两个表格的第一行都为标题,sheet2的数据有100行,则如果想在sheet1的C列填写对应人的职位,则可在C2单元格输入如下公式 =vlookup(A2,sheet2!A$2:C$100,3,false),然后用填充柄向下填充即可。
第4个回答  2010-12-08
如果没有搞定就HI我,我来帮你。用vlookup 函数或VBA都可以,如果数据多的话建议用VBA。
相似回答