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

Eri*_*bar 4 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 
Run Code Online (Sandbox Code Playgroud)

这就是我想要做的:

给定"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)
Run Code Online (Sandbox Code Playgroud)

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

Dic*_*ika 6

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

{=MAX(($A$2:$A$9=D2)*($B$2:$B$9<=E2)*($B$2:$B$9))}
Run Code Online (Sandbox Code Playgroud)

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

较小的人发现该网站的最大值小于或等于E2.较大者发现站点的最小值大于或等于E2.下来做其余的事情.

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