如果满足以下条件,我将尝试编写一个Excel公式以在工作表1的E列中返回某个值:
-value in column A;row x in worksheet1 matches value in column A;row y in worksheet2
-value in column K;row x in worksheet1 matches value in column C;row y in worksheet2
如果找到匹配项,则返回值应为工作表E列中的值乘以另一个工作表中特定值的2倍(在这种情况下,工作表3中的单元格B23)
下面包含的两个工作表的图像 因此在这种情况下,包含公式的工作表1的单元格L122应返回工作表2的值E6(因为05.11和'st'匹配)
到目前为止的公式:
=INDEX(worksheet2!$E$4:$E$285;match(worksheet1!A1&worksheet1!K1;worksheet2!$A$4:$A$285&worksheet2!$C$4:$C$285;0))*(worksheet3!$B$23/750)
但是似乎我在匹配/索引公式上做错了什么,却不是一个真正导致公式失败的线索:)
谢谢!
答案 0 :(得分:0)
...工作表1的单元格L122中包含公式,应返回工作表2的值E6(因为05.11和'st'匹配)
使用AGGREGATE可以简化多列匹配。放到工作表1!L122
=INDEX(worksheet2!$E$4:$E$285; aggregate(15; 7;
row($4:$285)/((worksheet2!$A$4:$A$285=worksheet1!A122)*
(worksheet2!$C$4:$C$285=worksheet1!K122)); 1))