Excel,更高效的多个IF ANDS公式

cra*_*ams 4 excel if-statement

我有一个我正在制作的电子表格,如下所示:

Index   Diff    Exc    Sym      Sec    Result   Criteria Met

3.42    -2.07   0.86    0.92    1.83    1.95    
-0.38   -2.93   0.87    0.23    -2.01   0.09    
-2.67   -1.84   0.87    -2.49   -3.48   1.32    
-0.65   -0.98   0.46    0.98    -2.01   0.00    
-0.73   -2.79   -1.07   -2.15   -1.44   -0.10   
0.15    2.33    -0.46   -0.66   3.17    0.38    0.38
0.90    -3.68   -0.72   -1.01   -1.36   1.69    
0.68    -1.12   -0.36   0.73    -1.34   -0.29   
-1.19   -1.70   -0.56   -1.31   1.45    0.49    
-0.45   -0.69   -0.56   -1.22   0.00    -0.49   
2.94    8.38    2.21    6.25    4.96    1.74    
-1.04   7.36    2.59    3.00    2.17    2.97    
1.21    1.73    3.05    1.48    3.56    0.77    
-1.10   1.86    0.60    1.18    1.07    -0.49   
-0.89   -3.19   -1.78   -2.24   -4.26   -0.81   
-1.17   -3.44   0.11    -1.22   3.66    0.36    
0.52    0.92    -1.02   0.38    1.96    -1.40   -1.40
-0.90   3.01    -0.86   0.62    0.97    -0.50   -0.50
2.78    1.46    0.00    0.47    1.95    0.84    

        Max     Min             
Index    2.00   -2.00               
Diff    10.00   0.00                
Exc      0.00   -10.00              
Sym     10.00   -10.00              
Sec     20.00   0.00    
Run Code Online (Sandbox Code Playgroud)

在标题索引,差异,消息,符号,秒,结果是所有数据,在标准满足列我有一个公式,检查先前的标题是否落在下面的较小的表的最大和最小限制内,如果他们这样做它会发布结果,如果它们都不属于Max和Min界限,则会将其留空.我是通过使用这个公式做到的:

=IF(AND(A3<$B$24,A3>$C$24,B3<$B$25,B3>$C$25,C3<$B$26,C3>$C$26,D3<$B$27,D3>$C$27,E3<$B$28,E3>$C$28),F3,"")
Run Code Online (Sandbox Code Playgroud)

复制了标准符合列.它完全适合我希望它实现的目标,但随着这个电子表格的增长,我添加了更多的列,似乎它将非常低效并且容易出现很多人为错误.有没有办法达到相同的结果,但使用更有效的公式?

一张图片供参考:

在此输入图像描述

Sco*_*ner 5

试试这个数组公式:

=IF(SUM((A3:E3<=TRANSPOSE($B$24:$B$28))*(A3:E3>= TRANSPOSE($C$24:$C$28)))=COLUMNS(A3:E3),F3,"")
Run Code Online (Sandbox Code Playgroud)

作为数组公式,必须在退出编辑模式时使用Ctrl-Shift-Enter确认.如果操作正确,Excel将自动放置{}公式以表示数组公式.

![在此处输入图像说明

需要注意的是,要比较的列需要与最小/最大行的顺序相同.


此外,正如几乎每个人所说的,如果将Min Max转换为来自列的行,则可以减轻使用CSE数组公式的需要.以下将有效:

=IF(SUMPRODUCT((A5:E5>=$A$3:$E$3)*(A5:E5<=$A$2:$E$2))=COLUMNS(A5:E5),F5,"")
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述