excel IF函数多重判断
答案:6 悬赏:50 手机版
解决时间 2021-01-26 02:04
- 提问者网友:姑娘长的好罪过
- 2021-01-25 03:41
excel IF函数多重判断应该怎么写?就是=IF(.............)里面的东西,我搞不懂里面的编程准则。最好能举个例子来说明,不要拿excel帮助里面的东西复制过来。我刚学EXCEL,自学的,谢谢
最佳答案
- 五星知识达人网友:躲不过心动
- 2021-01-25 03:53
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(A10<60,"语文需要补考",IF(B10<60,"数学需要补考",IF(C10<60,"英语需要补考",IF(D10<60,"政治需要补考","恭喜你,你不用补考"))))
这样写,程序首先判断语文,然后数学,然后英语,然后政治。
但是这样的坏处就是,语文如果不合格,显示要补考,但是不判断剩下的科目
如果说要所有科目都判断出来,那么,就要灵活的套用IF()了
这样子,语句就要写成下面的样子
=IF(A10<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(
A10<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()使用时,可以嵌套,就是说,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(A10<60,"语文需要补考",IF(B10<60,"数学需要补考",IF(C10<60,"英语需要补考",IF(D10<60,"政治需要补考","恭喜你,你不用补考"))))
这样写,程序首先判断语文,然后数学,然后英语,然后政治。
但是这样的坏处就是,语文如果不合格,显示要补考,但是不判断剩下的科目
如果说要所有科目都判断出来,那么,就要灵活的套用IF()了
这样子,语句就要写成下面的样子
=IF(A10<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(
A10<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,"你需要补考的科目是:政治","恭喜你,你不用补"
)
)
)
)
全部回答
- 1楼网友:人间朝暮
- 2021-01-25 07:17
举个我前几天给别人做的例子:
如果a1单元格的数据以5开头,则在b1里显示aa;以e开头,显示bb;以i开头显示cc;其他开头的,显示dd。
在b1里输入公式:=IF(LEFt(A1)="5","aa",IF(LEFt(A1)="e","bb",IF(LEFt(A1)="I","cc","dd")))
解释:从左往右看,如果a1以5开头,得到aa,否则再议。在a1不等于5的情况下,如果以e开头,显示bb,否则再议。且不以e开头的情况下,如果以i开头,显示cc,否则dd。
- 2楼网友:深街酒徒
- 2021-01-25 07:10
A列 B列
成绩 类别
50 不及格
如果A1是分数,
在B1写下公式.
=if(a1<60,"不及格",if(a1<80,"及格",if(a1<100,"优秀","满分")))
语法分析:IF(logical_test,value_if_true,value_if_false)
第一个","之前是判断的语句,如"A1<60",
第二个","与第一个","是真值,即如果A1<60成立,就显示"不及格",如果A1不是小于60,则进入第二个","之后的判断.
- 3楼网友:千夜
- 2021-01-25 06:11
=IF(B2=H2,I2,IF(B2=H3,I3,IF(B2=H4,I4,IF(B2=H5,I5))))
上边的公式的含义就是:
如果,B2=H2,返回或显示I2这个数值;
否则,如果,B2=H3,返回或显示I3这个数值;
否则,如果,B2=H4,返回或显示I4这个数值;
否则,如果,B2=H5,返回或显示I5这个数值;
否则,不显示。
这个函数写得有点麻烦,他的意思就是从H2:H5中找到=B2的,显示同行的I列数值。
这种判断是在“否”的条件中连续判断。
=IF(AND(IF(TYPE(YEAR(I55))=16,0,YEAR(I55))=2001,IF(TYPE(MONTH(I55))=16,0,MONTH(I55))<=6),7-IF(TYPE(MONTH(I55))=16,0,MONTH(I55)),0)
这个函数的意思是:如I55单元格中数据为日期,且为2001年度6月份以前(2001.1-2001.6)时,显示7-月份的数值,否则显示0。
写函数这种事情,每个人的做法都是不一样的,关键是自己的思路要清晰。
对于第一个公式,在自己做的时候,选择一步步分解,看对你有没有帮助。
if(条件,真,假)
=IF(B2=H2,I2,*)
*=IF(B2=H3,I3,*)
*=IF(B2=H4,I4,*)
*=IF(B2=H5,I5)
- 4楼网友:三千妖杀
- 2021-01-25 04:41
=if(c2=$a4,"1",if(c3=$a4,"2",""))
- 5楼网友:逐風
- 2021-01-25 04:34
我来回答试试吧,我也是刚学,不足之处请多多包含!
首先IF函数的格式是:
if(条件,"条件成立的结果","条件不成立的结果")
要注意的是1:if后面没有空格.2:所有的符号都是半角符号.3:if语句可以嵌套,但是要注意嵌套环节,也就是括号的位置
举个例子:
如果A列是学生的成绩,我们在B列对学生的成绩进行判断
就可以这样写:if(a1<60,"不及格","及格")
如果再进一步的判断大于60为好,大于80分的为优秀可以这样写
if(a1<60,"不及格",if(a1<80,"好",if(a1<101,"优秀","不及格")))
如果还有什么不明白的地方我们可以共同探讨,我也在学习,我的QQ:22199454
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯