EXCEL怎么用函数查找同时满足两个条件的值
A1:C10为原表 我需要满足E列和F列的两个条件 在G列导出原表的时间 展开
“EXCEL用函数查找同时满足两个条件的值”的操作步骤是:
1、打开Excel工作表;
2、由题意可知,在A2:G10单元格区域,存在着编号和日期对应的C列时间,现在需要由E列和F列的条件返回C列对应的时间,这可以通过INDEX+MATCH数组公式来实现;
3-(1) INDEX+MATCH数组公式
设置G列单元格格式为“时间格式”在G2单元格输入以下数组公式,按Ctrl+Shift+Enter组合键结束,然后向下填充公式
=IFERROR(INDEX(C:C,MATCH(E2&F2,A:A&B:B,0)),"")
公式表示:定位到C列,将同时满足A列为E2且B列为F2条件的对应行数据引用出来。如果查找条件不在引用区域,不返回错误值,而是返回空。
3-(2) VLOOKUP+IF数组公式
设置G列单元格格式为“时间格式”在G2单元格输入以下数组公式,按Ctrl+Shift+Enter组合键结束,然后向下填充公式
=IFERROR(VLOOKUP(E2&F2,IF({1,0},A:A&B:B,C:C),2,0),"")
公式表示:将E2和F2合并为查找条件,并在A列和B列合并列中,找到对应的行,并返回对应C列的数据。如果查找条件不在引用区域,不返回错误值,而是返回空。
“EXCEL用函数查找同时满足两个条件的值”的操作步骤是:
1、打开Excel工作表;
2、由题意可知,在A2:G10单元格区域,存在着编号和日期对应的C列时间,现在需要由E列和F列的条件返回C列对应的时间,这可以通过INDEX+MATCH数组公式来实现;
3-(1) INDEX+MATCH数组公式
设置G列单元格格式为“时间格式”在G2单元格输入以下数组公式,按Ctrl+Shift+Enter组合键结束,然后向下填充公式
=IFERROR(INDEX(C:C,MATCH(E2&F2,A:A&B:B,0)),"")
公式表示:定位到C列,将同时满足A列为E2且B列为F2条件的对应行数据引用出来。如果查找条件不在引用区域,不返回错误值,而是返回空。
3-(2) VLOOKUP+IF数组公式
设置G列单元格格式为“时间格式”在G2单元格输入以下数组公式,按Ctrl+Shift+Enter组合键结束,然后向下填充公式
=IFERROR(VLOOKUP(E2&F2,IF({1,0},A:A&B:B,C:C),2,0),"")
公式表示:将E2和F2合并为查找条件,并在A列和B列合并列中,找到对应的行,并返回对应C列的数据。如果查找条件不在引用区域,不返回错误值,而是返回空。
也可以用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个公式去处理这种需求的。
=INDEX(C:C,MATCH(1,(A:A=E2)*(B:B=F2),0))
按ctrl+shift+enter结束公式