设为首页 - 加入收藏
广告 1000x90
您的当前位置:188144com黄大仙救世网 > 近似匹配 > 正文

实现两个EXCEL里数据匹配

来源:未知 编辑:admin 时间:2019-07-28

  实现两个EXCEL里数据匹配_IT/计算机_专业资料。实现两个EXCEL里数据匹配

  如何实现两个 数据的 如何实现两个 EXCEL 里数据的匹配 工作上遇到了想在两个不同的 EXCEL 表里面进行数据的匹配,如果有相同的数据项,则输出一个 “YES”, 如果发现有不同的数据项则输出“NO”, 这里用到三个 EXCEL 的函数, 觉得非常的好用, 特贴出来, 也是小研究一下,发现 EXCEL 的功能的确是挺强大的。这里用到了三个函数:VLOOKUP、ISERROR 和 IF,首先对这三个函数做个介绍。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ VLOOKUP:功能是在表格的首列查找指定的数据,并返回指定的数据所在行中的指定 列处的数据。函数表达式是: VLOOKUP(lookup_value,table_array,col_index_num,range_lookup) 1. Lookup_value 为“需在数据表第一列中查找的数据”, 可以是数值、 文本字符串或引用。 2.Table_array 为“需要在其中查找数据的数据表”,可以使用单元格区域或区域名称等。 ⑴ 如果 range_lookup 为 TRUE 或省略,则 table_array 的第一列中的数值必须 按升序排列,否则,函数 VLOOKUP 不能返回正确的数值。如果 range_lookup 为 FALSE,table_array 不必进行排序。 ⑵Table_array 的第一列中的数值可以为文本、数字或逻辑值。若为文本时,不区分 文本的大小写。 3. 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!。 4.Range_lookup 为一逻辑值,指明函数 VLOOKUP 返回时是精确匹配还是近似匹配。 如果为 TRUE 或省略,则返回近似匹配值,也就是说,如果找不到精确匹配值,则返回小 于 lookup_value 的最大数值;如果 range_value 为 FALSE,函数 VLOOKUP 将返回精 确匹配值。如果找不到,则返回错误值 #N/A。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ISERROR:它属于 IS 系列,IS 系列用来检验数值或引用类型,有九个相关的函数: ISBLANK(value) :判断值是否为空白单元格。 ISERR(value) :判断值是否为任意错误值(除去 #N/A)。 ISERROR(value) :判断值是否为任意错误值(#N/A、#VALUE!、#REF!、#DIV/0!、 #NUM!、#NAME? 或 #NULL!)。 ISLOGICAL(value) :判断值是否为逻辑值。 ISNA(value) :判断值是否为错误值 #N/A(值不存在)。 ISNONTEXT(value) :判断值是否为不是文本的任意项(注意此函数在值为空白单元格 时返回 TRUE)。 ISNUMBER(value) :判断值是否为数字。 ISREF(value) : 判断值是否为引用。 ISTEXT(value) :判断值是否为文本。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ IF:执行逻辑判断,它可以根据逻辑表达式的真假,返回不同的结果,从而执行数值或公式 : 的条件检测任务。函数表达式为:IF(logical_test,value_if_true,value_if_false),其中含义如 下所示: logical_test:要检查的条件。 value_if_true:条件为真时返回的值。 value_if_false:条件为假时返回的值。 ——————————————————————————————————————————————————— 下面介绍下通过上述的三个函数如何达到我想要的要求的, 下图是工作中的两个 EXCEL 表,sheet1 和 sheet2,现在要将 sheet2 的每一行数据在 sheet1 中查找匹配,如有 sheet1 中存在,则在 sheet2 中的 E 列显示“存在”,否则显示“不存在”。 sheet2 sheet1 首先使用了 VLOOKUP 函数将 sheet1 中的数据在 sheet2 中进行查找, =VLOOKUP(A2,sheet1!$A$2:$C$952,1,FALSE),其中 A2 表示用来匹配项的数据,将 A2 在 sheet1 的所有列中查找就是使用第二个条件: sheet1!$A$2:$C$952, 表示绝对引用, “$”表示绝对引用 表示绝对引用, 复制的时候不会随着单元格位置变化而变化, 复制的时候不会随着单元格位置变化而变化,1 表示匹配成功后返回第一列的数据,否则返 回#N/A,FALSE 表示返回精确匹配值。 注:绝对引用和相对引用只要在公式栏里面对应的数据下按 F4 功能键即可切换。 当有返回结果后刚开始直接使用 IF 去判断了,公式是: =IF(VLOOKUP(A2,sheet1!$A$2:$C$952,1,FALSE)=A2,存在,不存在),这个时候发现当 匹配成功的时候输出了“存在”, 当匹配不成功是却输出了“#N/A”, 一直没法实现想要的结果, 后来发现 VLOOKUP 只能输出指定的值或者“#N/A”,而与 A2 判断的结果也为“#N/A”,作为 IF 函数是无法识别“#N/A”,这样导致不会输出“不存在”,所以要想办法将 IF 的第一个条件 的结果是“Ture”or False,于是就找到了函数 ISERROR(Value),这个输出的结果是 “Ture”or False,于是公式就变成了 =IF(ISERROR(VLOOKUP(A2,sheet1!$A$2:$C$952,1,FALSE)),不存在,存在),大功告 成,输出自己想要的结果,当在 shhet2 中的项目能在 sheet1 中找到时输出“存在”,找不到 时输出“不存在”。 总结:VLOOKUP 的函数比较好用,可以寻找并且匹配,但是要注意只能是匹配项在 总结: 首列,如果不是则要用 HLOOKUP 函数。EXCEL 的函数功能还是挺强大的,好好研究对于 我们数据统计和处理是非常有帮助的,目前对于 VLOOKUP、ISERROR 和 IF 三个函数有 一定的认识,以后还得继续研究学习。

本文链接:http://storkroadfarm.com/jinsipipei/235.html

相关推荐:

网友评论:

栏目分类

现金彩票 联系QQ:24498872301 邮箱:24498872301@qq.com

Copyright © 2002-2011 DEDECMS. 现金彩票 版权所有 Power by DedeCms

Top