Excel如何在一个数据表中提取,同时满足两个条件不重复的多个值,使用函数 5
具体表格如下,第一个是数据基础表,第二个是需要提取出的表。第一个表基础数据单位周数线路名称单位11线路123单位21线路321单位11线路124单位11线路123单位12...
具体表格如下,第一个是数据基础表,第二个是需要提取出的表。
第一个表基础数据
单位 周数 线路名称
单位1 1 线路123
单位2 1 线路321
单位1 1 线路124
单位1 1 线路123
单位1 2 线路123
表二中输入要查看单位,周数,自动选出符合的不重复线路,例如 输入要查看的单位1,周数1
单位 周数 线路
单位1 1 线路123
单位1 1 线路124 展开
第一个表基础数据
单位 周数 线路名称
单位1 1 线路123
单位2 1 线路321
单位1 1 线路124
单位1 1 线路123
单位1 2 线路123
表二中输入要查看单位,周数,自动选出符合的不重复线路,例如 输入要查看的单位1,周数1
单位 周数 线路
单位1 1 线路123
单位1 1 线路124 展开
展开全部
用上图给你演示一下,不在同一张工作表中的话,意思是一样的。
可以用VLOOKUP和MATCH函数的组合:
=IFERROR(VLOOKUP(A1,F1:H4,3,MATCH(B1,G1:G4,0)),"")
输入完以上公式后,按Ctrl+Shift+Enter,形成最终的公式:
{=IFERROR(VLOOKUP(A1,F1:H4,3,MATCH(B1,G1:G4,0)),"")}
有以下3个公式都可以实现这个功能:
1:{=IFERROR(VLOOKUP(A1,F1:H4,3,MATCH(B1,G1:G4,0)),"")}
2:{=IFERROR(VLOOKUP(A1&B1,IF({1,0},F:F&G:G,H:H),2,0),"")}
3:{=IFERROR(INDEX(H:H,MATCH(A1&B1,F:F&G:G,0)),"")}
相对来说,就我个人使用,感觉第1个公式更好一点,当查找单元格没有填写内容时,返回值不会为0,其他两个都会返回0,强迫症和有别的需求时,很不方便,可能就需要再用其它函数想办法把0给去除了,目前没去研究具体的去除方法,所以,我就用的第1个公式去处理这种需求的。
展开全部
在Sheet2的C4单元格中输入公式
=INDEX(Sheet1!E:E,SMALL(IF((Sheet1!D$3:D$30=A4)*(Sheet1!B$3:B$30=B4)),ROW($3:$30),4^8),ROW(A1)))&""
公式输入结束后按【组合键】确认,再将公式下拉填充。
=INDEX(Sheet1!E:E,SMALL(IF((Sheet1!D$3:D$30=A4)*(Sheet1!B$3:B$30=B4)),ROW($3:$30),4^8),ROW(A1)))&""
公式输入结束后按【组合键】确认,再将公式下拉填充。
更多追问追答
追问
公式不对吧……提示公式错误
追答
可能有如下两个原因:
1、公式输入结束后应同时按【Ctrl+Shift+Enter】三键确认,你未按要求做到——如果是,改过来就行。
2、你的数据源工作表的名称不是Sheet1而是其他的——如果是,改过来就行。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
说的太笼统,通常情况下按你的描述应该使用sumproduct函数,具体的还需要看到图片实例才能判断。
更多追问追答
追问
具体传上去了
追答
没看明白,你得具体说下,哪个单元格的结果需要满足什么条件。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可选用以下两种方法:
1、用LOOKUP函数配合有关条件实现。
示例公式:
=LOOKUP(0,0/((sheet2!A$1:A$100=A1)*(sheet2!B$1:B$100=B1)),sheet2!C$1:C$100) 该公式“在SHEET2中查找A列B列与本表A列B列对应相同的C列值”。
其中:LOOKUP函数返回向量或数组中的数值,其语法形式有向量和数组两种,本例使用了向量形式。
向量形式的语法是:
LOOKUP(lookup_value,lookup_vector,result_vector) 参数Lookup_value为函数在第一个向量中所要查找的数值,Lookup_vector和result_vector分别为第一向量查找区域和第二向量结果区域,它们是只包含一行或一列的区域。
2、用VLOOKUP函数与IF({1,0}配合实现。
示例公式:
=VLOOKUP(A1&B1,IF({1,0},SHEET2!A$1:A$100&SHEET2!B$1:B$100,SHEET2!C$1:C$100),2,)
其中:IF({1,0},SHEET2!A$1:A$100&SHEET2!B$1:B$100,SHEET2!C$1:C$100)建立一个包含两列数据的内在数组,第一列为A列与B列值同行合并结果,第二列为C列值。
1、用LOOKUP函数配合有关条件实现。
示例公式:
=LOOKUP(0,0/((sheet2!A$1:A$100=A1)*(sheet2!B$1:B$100=B1)),sheet2!C$1:C$100) 该公式“在SHEET2中查找A列B列与本表A列B列对应相同的C列值”。
其中:LOOKUP函数返回向量或数组中的数值,其语法形式有向量和数组两种,本例使用了向量形式。
向量形式的语法是:
LOOKUP(lookup_value,lookup_vector,result_vector) 参数Lookup_value为函数在第一个向量中所要查找的数值,Lookup_vector和result_vector分别为第一向量查找区域和第二向量结果区域,它们是只包含一行或一列的区域。
2、用VLOOKUP函数与IF({1,0}配合实现。
示例公式:
=VLOOKUP(A1&B1,IF({1,0},SHEET2!A$1:A$100&SHEET2!B$1:B$100,SHEET2!C$1:C$100),2,)
其中:IF({1,0},SHEET2!A$1:A$100&SHEET2!B$1:B$100,SHEET2!C$1:C$100)建立一个包含两列数据的内在数组,第一列为A列与B列值同行合并结果,第二列为C列值。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询