EXCEL中在某列中查找指定文本,返回行对应另一列的数据用啥函数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EXCEL中在某列中查找指定文本,返回行对应另一列的数据用啥函数相关的知识,希望对你有一定的参考价值。
比如我采购清单上,A列是物品名称,B列是数量,C列是供应商名称,现在我找某一个供应商,所有这个供应商处采购的物品都列出来,用什么函数啊
在EXCEL中某列中查找指定文本,返回行对应另一列的数据,根据补充说明,可以使用INDEX函数、LARGE函数和ROW函数。
假设数据在A1至C7单元格区域,求值在H列,如下图:
在H2单元格中输入公式,并向下填充,最后将重复的H5至H7数据删除即可:
=INDEX($A$2:$A$7,LARGE(($C$2:$C$7=$G$2)*ROW($1:$6),ROW(A1)))
注意:最后不要直接按回车,需要按<Ctrl+Shift+Enter>组合键结束,公式的两端会自动出现一对大括号。
参考技术A如果是同个供应商会采购多个物品的,建议用数据透视表
下面是示范例子
1、选中abc列,插入-透视表
2、按照下图移动字段到对应位置,其中供应商字段移动到筛选框
3、这样就可以筛选供应商,列出所有相关物品了
解决问题,请及时采纳答案
追问用这个方法的确可以,不过这个结果显示看起来很不爽,能自己调吗
点击透视表任意位置,顶栏的透视表选项可以进行设置
具体问题,请查阅透视表教程
解决问题,请及时采纳答案
如果对应多个 供应商,要用INDEX数组公式 参考技术C
=VLOOKUP(D2,$A$2:$C$99,1)
例如:
参考技术D VLOOKUP函数如何按顺序提取EXCEL里其中一列数据(符合指定条件的)依次显示在另一列里
如查找A1:A50,如果对应B1:B50的值大于0时,把2列大于0对应的1列数值显示在3列里,比如其中B5,B15,B20这三个数大于0,则把A5,A15,A20的值自动依次序显示在C1,C2,C3里。
参考技术A 在C1输入以下数组公式,下拉填充到C50即可=index(a:a,small(if(b$1:b$50>0,row($1:$50),4^8),row()))&""
PS:复制以上公式到C1单元格,ctrl+shift+enter结束本回答被提问者采纳 参考技术B 用条件涵数尝试一下,不过好像得分步骤,没办法一步到位:
在C列的第一个单元格里输:if(B1>0,"A",""),然后拉下去,再用数据筛选第一行,在C列里面选A,再用D*=A* (*代表任何值),最后再去掉筛选,这样D里面出现的就都是B列中值大于0所对应的A列的值了,最后要去掉空格就简单啦。
嘿嘿,不知道你要的结果是不是这样的。 参考技术C 你的问题是在C列中显示B列大于零时的A列值吧,这样的话,在C1中输入“=if(B1>0,A1,""”,回车,用自动填充柄下拖。
以上是关于EXCEL中在某列中查找指定文本,返回行对应另一列的数据用啥函数的主要内容,如果未能解决你的问题,请参考以下文章