在工作表中查找具有两个条件匹配项的值,复制它们并将它们粘贴到具有VBA的另一个工作表中

时间:2015-03-04 21:10:41

标签: excel vba excel-vba

这是我的问题:

Sheet1 =“接口”。 Sheet2 =“数据”。

C5栏:“数据”中的C160包含任务列表。 第D4行:“数据”中的M4包含一个位置类型(作业)列表,我用1-10标记了“作业类别”。范围D5:M160包含每个任务和职位类型的工作时间。

“接口”中的列E和F中的值通过数据验证与“数据”中的列C和行4相关。

我想要做的是创建一个高级过滤器,可以复制D5中的值:“数据”中的M160并将这些值粘贴到“接口”中的列G中,如果列E和F“接口”中的值与值匹配分别在“数据”中的C列和第4行中同时进行。

这意味着它应该是一个宏来复制和粘贴具有从一个工作表到另一个工作表的匹配多个条件(两个条件)的值。

我尝试了不同的事情,没有成功。我也尝试过具有多个标准的数组公式,vlookup和sumifs,但这些似乎都不起作用。

有什么想法吗?

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

index公式与match相结合就是为此而构建的。

当您提供行和列时,

Index会返回指定表中的值。

Match用于根据条件返回行/列。

因此,在Interface表单上(假设您的数据在第1行开始),您可以将以下公式放在G1中并根据需要将其复制下来。

=INDEX(Data!$D$5:$M$160,MATCH(E1,Data!$C$5:$C$160,0),MATCH(F1,Data!$D$4:$M$4,0))