if用法:if(a,b,c)表示如果a的式子成立,那么该格子里面显示b,如果a的式子不成立,那么该格子里面显示c if()使用时,可以嵌套,就是说,if(a,b,c)里面的b项和c项可以用另外一个if(a,b,c)代替,即if(if()),这个时候,先判断最外面的一个if的式子是否成立,然后判断中间的式子。 但是嵌套的时候,要注意到底后面的if要嵌入b项里面,还是c项里面。 例:某同学语文65,数学80,英语55,**75,问怎么计算这位同学是否需要补考?设语文为a列,数学为b列,英语为c列,**为d列 设该同学成绩所在行为第10行 可以写出这样子的语句 =if(<60,"语文需要补考",if(b10<60,"数学需要补考",if(c10<60,"英语需要补考",if(d10<60,"**需要补考","恭喜你,你不用补考")))) 这样写,程序首先判断语文,然后数学,然后英语,然后**。 但是这样的坏处就是,语文如果不合格,显示要补考,但是不判断剩下的科目 如果说要所有科目都判断出来,那么,就要灵活的套用if()了 这样子,语句就要写成下面的样子 =if(<60,if(b10<60,if(c10<60,if(d10<60,"你需要补考的科目是:语文、数学、英语、**","你需要补考的科目是:语文、数学、英语"),if(d10<60,"你需要补考的科目是:语文、数学、**","你需要补考的科目是:语文、数学")),if(c10<60,if(d10<60,"你需要补考的科目是:语文、英语、**","你需要补考的科目是:语文、英语"),if(d10<60,"你需要补考的科目是:语文、**","你需要补考的科目是:语文"))),if(b10<60,if(c10<60,if(d10<60,"你需要补考的科目是:数学、英语、**","你需要补考的科目是:数学、英语"),if(d10<60,"你需要补考的科目是:数学、**","你需要补考的科目是:数学")),if(c10<60,if(d10<60,"你需要补考的科目是:英语、**","你需要补考的科目是:英语"),if(d10<60,"你需要补考的科目是:**","恭喜你,你不用补")))) 上面就是考虑四科所有的情况下,单纯用if写的语句,我自己测试过,在excel中可用的。 是不是觉得很长?正常的,如果你学过排列组合,你就清楚,一科只有两种情况,但是两科就是四种,三科就是八种,四科就是十六种,要把十六种情况都写进去,不长才奇怪呢。如果你还要加上物理化学生物历史地理等。。。。。阿门,愿上帝保佑你。。。。。。 ========== 为了方便你看上面那段代码,我把它分解如下,这样结构清晰一些,容易看 =if( <60,if( b10<60,if( c10<60,if( d10<60,"你需要补考的科目是:语文、数学、英语、**","你需要补考的科目是:语文、数学、英语" ),if( d10<60,"你需要补考的科目是:语文、数学、**","你需要补考的科目是:语文、数学" ) ),if( c10<60,if(d10<60,"你需要补考的科目是:语文、英语、**","你需要补考的科目是:语文、英语" ),if( d10<60,"你需要补考的科目是:语文、**","你需要补考的科目是:语文" ) ) ),if( b10<60,if( c10<60,if( d10<60,"你需要补考的科目是:数学、英语、**","你需要补考的科目是:数学、英语" ),if( d10<60,"你需要补考的科目是:数学、**","你需要补考的科目是:数学" ) ),if( c10<60,if( d10<60,"你需要补考的科目是:英语、**","你需要补考的科目是:英语" ),if( d10<60,"你需要补考的科目是:**","恭喜你,你不用补" ) ) ) ) 20210311