在列表中查找小于另一个的值

时间:2012-08-16 21:32:17

标签: excel

我有以下excel设置,但这是一个简化的设置:

     A     B         C       D       E
   1 Site1 X-Given   Y-Given Site2   X-New-Given 
   2 A     10        400     A       15         
   3 A     20        500     A       25          
   4 A     30        600     A       30          
   5 A     40        700     B       35          
   6 A     50        800     B       30          
   7 B     2         400     B       15          
   8 B     25        500     B       25          
   9 B     300       600     B       30 

这就是我要做的事情:

在“E列”中给出一个值,我希望找到一个值< =“E列中的值”,只要它们位于同一个站点

然后我想做同样的事情只找到> “E栏”中的值

因此,所需的公式将是两个具有更大值的单元格,一个具有小于值的单元格

Example 1: Given 15 (E2) ---> would return "10" (from B2) and "20" (from B3)
Example 2: Given 15 (E7) ---> would return "2" (from B7) and "25" (from B8)

正如您所看到的,输出会根据网站而改变,这是我似乎无法掌握的部分!

1 个答案:

答案 0 :(得分:6)

这些是使用Control + Shift + Enter输入的数组公式,而不仅仅是Enter。如果你正确输入它们,Excel会在它们周围加上大括号 - 不要自己输入大括号。

{=MAX(($A$2:$A$9=D2)*($B$2:$B$9<=E2)*($B$2:$B$9))}

{=MIN(IF((($A$2:$A$9=D2)*($B$2:$B$9>=E2)*($B$2:$B$9))=0,"",$B$2:$B$9))}

较小者发现该网站的最大值小于或等于E2。较大者发现站点的最小值大于或等于E2。下来完成剩下的工作。

公式中的数组返回0表示FALSE,1表示TRUE,因此只要其中一行为FALSE,MIN就会返回0。这就是你必须使用IF语句的原因。通过为FALSE注入一个字符串,它会忽略它们,因为MIN会忽略字符串。