EXCEL查找相同单元格
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EXCEL查找相同单元格相关的知识,希望对你有一定的参考价值。
表A
A B
汽车 BBB
飞机 DDD
大炮 CCC
汽车 EEE
大炮 FFF
表B
A B C
汽车 大炮 飞机
BBB CCC DDD
EEE FFF
要求:表A插入一行后 表B能根据第一行在表A查找相同单元格 自动增加表A中 B列的文字。 盼高手不吝赐教!谢谢!
=T(INDEX(Sheet1!$B:$B,SMALL(IF(Sheet1!$A$1:$A$1000=A$1,ROW(Sheet1!$A$1:$A$1000),4^8),ROW(A1))))
同时按下CTRL+SHIFT+ENTER输入数组公式,再把A2的公式用自动填充柄向右拉二格到C2,再选中A2:C2,用自动填充柄一直向下复制到合适位置,就可以了. 参考技术A 直接在这上面说不清,你把文件发到我的邮箱里来,我给你讲解清楚,并给你份教案让你参考。我的邮箱:duozhi.xu@163.com
excel如何查找并自动填写对应数据
有两张表,sheet1有三列:单位,姓名,数据;sheet2只有两列:单位,姓名。如:
sheet1:
单位 姓名 数据
一 张三 1
二 李四 2
三 王五 3
……
sheet2:
单位 姓名 数据
二 李四 ?
一 张三 ?
三 王五 ?
……
由于数据量庞大且顺序杂乱,我需要将sheet1中数据填充到sheet2对应位置,请各位大侠将具体步骤写清楚,并且详细写明各部分公式作用,一目了然,小弟分不多,20分献上,谢谢大家,今晚就要!
根据你的情况只用一个Vlookup函数就可以解决了。
具体的操作步骤如下:
1、打开EXCEL的Sheet2工作表。
2、点击上方插入函数,然后插入Vlookcup函数。
3、按下图方式填写或直接再C2单元格中输入=VLOOKUP(B2,Sheet1!$B$2:$C$4,2,0)。
(第一个格的数据表示你要查找的单元格,第二个格的数据表示你要在查找的对应表格范围,第三个格表示要返回的数据列。)
4、点击确定,下拉填充就可以。
参考技术Avlookup函数:vlookup(lookup_value,table_array,col_index_num,[range_lookup])
第一个参数:lookup_value表示你想要根据哪个值来查找到你想要的数据,比如:可以根据值a可以找到b,那么lookup_value就填写成"a";
第二个参数:table_value表示你想要在哪个表区域中进行数据查找;
第三个参数:[range_lookup],表示是精确查找还是模糊匹配;如果为false或0 ,则返回精确匹配,如果找不到,则返回错误值 #N/A;如果 range_lookup 为TRUE或1,函数 VLOOKUP 将查找近似匹配值,也就是说,如果找不到精确匹配值,则返回小于 lookup_value 的最大数值。默认为模糊匹配。
下边举例说明:
1.现要将表1中的学生的总分进行填充,笨的方法是一个个根据表1中的学生姓名到表2中找到对应的名字的总分,这样效率太低,可利用vlookup函数轻松完成。
2.切换到“表一”页签,在单元格B2输入:=vlookup(A2,
3.接着切换到“表二”页签,选中要查找数据的区域,这时表一”页签单元格B2的值自动变为:=vlookup(A2,表二!A2:B17。
说明:表二!A2:B17的意思是:系统将在表二”页签的A2:B17形成的表格区域中进行数据查找。
4.再切换回“表一”页签,将单元格B2的值“=vlookup(A2,表二!A2:B17”修改为"=vlookup(A2,表二!$A$2:$B$17",有童鞋就会问为什么要将表二!A2:B17改为表二!$A$2:$B$17,在这里解释下$表示绝对的意思,$A$2:$B$17表示在下拉填充其他单元格时行列不变,这一点很重要。
5.然后在单元格B2中接着输入:=vlookup(A2,表二!$A$2:$B$17,2,false),并回车
说明:第三个参数“2”代表的是意思是指在“表二!A2:B17”形成的表格的中第2列中返回值,第四个参数"false"表示是按精确。
6.下拉单元格B2将B列的其他单元格进行vlookup公式复制自动填充并计算,结果如图中所示。
参考技术B vlookup函数:vlookup(lookup_value,table_array,col_index_num,[range_lookup])第一个参数:lookup_value表示你想要根据哪个值来查找到你想要的数据,比如:可以根据值a可以找到b,那么lookup_value就填写成"a";
第二个参数:table_value表示你想要在哪个表区域中进行数据查找;
第三个参数:[range_lookup],表示是精确查找还是模糊匹配;如果为false或0 ,则返回精确匹配,如果找不到,则返回错误值 #N/A;如果 range_lookup 为TRUE或1,函数 VLOOKUP 将查找近似匹配值,也就是说,如果找不到精确匹配值,则返回小于 lookup_value 的最大数值。默认为模糊匹配。
下边举例说明:
1.现要将表1中的学生的总分进行填充,笨的方法是一个个根据表1中的学生姓名到表2中找到对应的名字的总分,这样效率太低,可利用vlookup函数轻松完成。
2.切换到“表一”页签,在单元格B2输入:=vlookup(A2,
3.接着切换到“表二”页签,选中要查找数据的区域,这时表一”页签单元格B2的值自动变为:=vlookup(A2,表二!A2:B17。
说明:表二!A2:B17的意思是:系统将在表二”页签的A2:B17形成的表格区域中进行数据查找。
4.再切换回“表一”页签,将单元格B2的值“=vlookup(A2,表二!A2:B17”修改为"=vlookup(A2,表二!$A$2:$B$17",有童鞋就会问为什么要将表二!A2:B17改为表二!$A$2:$B$17,在这里解释下$表示绝对的意思,$A$2:$B$17表示在下拉填充其他单元格时行列不变,这一点很重要。
5.然后在单元格B2中接着输入:=vlookup(A2,表二!$A$2:$B$17,2,false),并回车
说明:第三个参数“2”代表的是意思是指在“表二!A2:B17”形成的表格的中第2列中返回值,第四个参数"false"表示是按精确。
6.下拉单元格B2将B列的其他单元格进行vlookup公式复制自动填充并计算,结果如图中所示。 参考技术C 使用vlookup,按照你的例子,你在C2中
=VLOOKUP(B2,SHEET1!A1:C254,3)
附 Vlookup的用法:
在 VLOOKUP 中的 V 代表垂直。
语法
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。 参考技术D 在sheet2的C2输入公式:
=SUMPRODUCT((Sheet1!A$2:A$100=A2)*(Sheet1!B$2:B$100=B2)*Sheet1!C$2:C$100)
向下填充即可。
注:公式中数据区域根据实际修改。
以上是关于EXCEL查找相同单元格的主要内容,如果未能解决你的问题,请参考以下文章
在EXCEL中 如何用VBA查找某特定单元格并返回该单元格的行和列值?