在Excel中根据另一个值和范围查找值

时间:2018-10-13 05:29:51

标签: excel vba excel-vba excel-formula

所以我遇到了不确定如何解决的问题。

我在Excel中有一个数据集,该数据集将由用户动态编辑,但是该数据具有特定的性质;我附有一张屏幕截图供参考。参考随附的屏幕截图,我需要在单元格H4中执行以下操作的公式:如果单元格G4不为空,请在“目标”列中查看单元格B4,然后查看该单元格中的值,然后在整个单元格中查找具有相同值的“目标”范围,如果找到,则在同一行的“手提包”列中查看该整数是否小于500。如果是,则在“托盘位置”列中查找该值同一行中的单元格,然后在单元格H4中显示该值。

希望这是有道理的。我不太确定用于这种事情的公式,或者这样做是否可行,但我们将不胜感激。

谢谢。

enter image description here

2 个答案:

答案 0 :(得分:2)

在H4中尝试一下并填写。

=IF(G4<>TEXT(,), IFERROR(IF(INDEX(E:E, AGGREGATE(15, 7, ROW(4:$11)/(B4:B$11=B4), 2))<500, INDEX(A:A, AGGREGATE(15, 7, ROW(4:$11)/(B4:B$11=B4), 2)), TEXT(,)), TEXT(,)), TEXT(,))

enter image description here

答案 1 :(得分:2)

另一种方式。将此公式放在上述文件中的单元格H4中。

=IFERROR(IF(MIN(IF(B4:B11=IF(G4<>"",B4,""),E4:E11))<500,INDEX(A4:A11,MATCH(MIN(IF(B4:B11=IF(G4<>"",B4,""),E4:E11)),E4:E11,0)),""),"")

使用 Ctrl + Shift + Enter 代替常规的 Enter

enter image description here

说明

  

如果单元格G4不为空,请在“目标”列中查看单元格B4,然后查看该单元格中的值是什么

IF(G4<>"",B4,"")
  

然后在整个“目标”范围内查找相同的值,如果找到,则在同一行的“托特”列中查看该整数是否小于500。

为此,您需要在“手提袋”列中找到N1的最小值。为此,公式是

MIN(IF(B4:B11="N1",E4:E11))

最后,如果您需要返回左列中的值,可以使用此值

INDEX(A4:A11,MATCH("498",E4:E11)),E4:E11,0))

现在只需将以上所有公式组合在一起。