Excel中的扩展嵌套if语句:处理

时间:2016-11-17 02:22:03

标签: excel if-statement filter nested

我想使用嵌套的if语句作为在Excel中过滤数据的方法,并编写了一系列嵌套的if语句,但是,代码将不会在Excel公式行中编译并出现错误“您输入的公式包含错误“,但我不知道错误可能在哪里。

IF(过滤器!$ V $ 7 =“”,IF(过滤器!$ AC $ 7 =“”,IF(SHEET1!$ T2 =过滤器!$ B $ 17,IF(SHEET1!$ U2 =过滤器!$ C $ 17 ,IF(SHEET1!$ V2 =过滤器!$ D $ 17,IF(SHEET1!$ W2 =过滤器!$ E $ 17,IF(SHEET1!$ X2 =过滤器!$ F $ 17,A2,“”),“”), “”),“”),“”),IF(SHEET1!$ M2 =过滤器!$ AC $ 7,IF(SHEET1!$ T2 =过滤器!$ B $ 17,IF(SHEET1!$ U2 =过滤器!$ C $ 17 ,IF(SHEET1!$ V2 =过滤器!$ D $ 17,IF(SHEET1!$ W2 =过滤器!$ E $ 17,IF(SHEET1!$ X2 =过滤器!$ F $ 17,A2,“”),“”), “”),“”),“”),“”)),IF(SHEET1!$ H2 =过滤器!$ V $ 7,IF(过滤器!$ AC $ 7 =“”,IF(SHEET1!$ T2 =过滤器! $ B $ 17,IF(SHEET1!$ U2 =过滤器!$ C $ 17,IF(SHEET1!$ V2 =过滤器!$ D $ 17,IF(SHEET1!$ W2 =过滤器!$ E $ 17,IF(SHEET1!$ X2 =过滤器!$ F $ 17,A2,“”),“”),“”),“”),“”),“”),IF(SHEET1!$ M2 =过滤器!$ AC $ 7,IF(SHEET1!$ T2 =过滤器!$ B $ 17,IF(SHEET1!$ U2 =过滤器!$ C $ 17,IF(SHEET1!$ V2 =过滤器!$ D $ 17,IF(SHEET1!$ W2 =过滤器!$ E $ 17,IF(SHEET1) !$ X2 =过滤器!$ F $ 17,A2,“”),“”),“”),“”),“”),“”),“”))

提前谢谢!!

1 个答案:

答案 0 :(得分:0)

随着复杂性的增加,这变得非常困难。您可以尝试使用Excel Formula Beautifier这样的网站,它会尝试使用缩进格式化您的公式。你上面的缩进看起来像这样:

=IF(
    FILTERS!$V$7 = "",
    IF ( FILTERS!$AC$7 = "" , IF ( SHEET1!$T2 = FILTERS!$B$17 , IF ( SHEET1!$U2 = FILTERS!$C$17 , IF ( SHEET1!$V2 = FILTERS!$D$17 , IF ( SHEET1!$W2 = FILTERS!$E$17 , IF ( SHEET1!$X2 = FILTERS!$F$17 , A2 , "" ) , "" ) , "" ) , "" ) , "" ) , IF ( SHEET1!$M2 = FILTERS!$AC$7 , IF ( SHEET1!$T2 = FILTERS!$B$17 , IF ( SHEET1!$U2 = FILTERS!$C$17 , IF ( SHEET1!$V2 = FILTERS!$D$17 , IF ( SHEET1!$W2 = FILTERS!$E$17 , IF ( SHEET1!$X2 = FILTERS!$F$17 , A2 , "" ) , "" ) , "" ) , "" ) , "" ) , “” ) ),
    IF(
        SHEET1!$H2 = FILTERS!$V$7,
        IF ( FILTERS!$AC$7 = "" , IF ( SHEET1!$T2 = FILTERS!$B$17 , IF ( SHEET1!$U2 = FILTERS!$C$17 , IF ( SHEET1!$V2 = FILTERS!$D$17 , IF ( SHEET1!$W2 = FILTERS!$E$17 , IF ( SHEET1!$X2 = FILTERS!$F$17 , A2 , "" ) , "" ) , "" ) , "" ) , "" ) , "" ),
        IF ( SHEET1!$M2 = FILTERS!$AC$7 , IF ( SHEET1!$T2 = FILTERS!$B$17 , IF ( SHEET1!$U2 = FILTERS!$C$17 , IF ( SHEET1!$V2 = FILTERS!$D$17 , IF ( SHEET1!$W2 = FILTERS!$E$17 , IF ( SHEET1!$X2 = FILTERS!$F$17 , A2 , "" ) , "" ) , "" ) , "" ) , "" ) , "" ),
        ""
    )
)

这意味着至少存在一个问题,即if(内部的一个显示四个)有超过3个参数。如果可以,可以一次构建一个,或者使用多个列来简化每个单独的表达式。