Excel如何在一个数据表中提取,同时满足两个条件不重复的多个值,使用函数

2025-03-06 11:28:50
推荐回答(4个)
回答1:

用上图给你演示一下,不在同一张工作表中的话,意思是一样的。

可以用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个公式去处理这种需求的。

回答2:

在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)))&""
公式输入结束后按【组合键】确认,再将公式下拉填充。

回答3:

说的太笼统,通常情况下按你的描述应该使用sumproduct函数,具体的还需要看到图片实例才能判断。

回答4:

可选用以下两种方法:
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列值。