星期八 发表于 2011-4-15 14:54:30

excel的IF命令

=IF(I4="",IF(A4<>"",J3,""),A1)
=IF(I4<>"",A1,IF(A4<>"",K3,""))
请问这两条命令怎么解释。新手,拜托
另能给点if命令的使用说明吗?

我先用最自然的语句来给你解释一下这两个公式。

=IF(I4="",IF(A4<>"",J3,""),A1)
如果单元格I4的内容是空的,且A4单元格的内容不是空的,那么此单元格则显示J3单元格的内容,
如果I4是空的,而且A4单元格也是空的,那么此单元格也显示空值。
如果I4单元格不是空的,就直接显示A1单元格的内容。

=IF(I4<>"",A1,IF(A4<>"",K3,""))
如果I4单元格不是空的,显示A1的内容。
如果I4单元格是空的,且A4不是空的,就显示K3单元格的内容。
如果I4单元格是空的,但A4单元格也是空的,那么此单元格也显示空值。


我再给你解释一下IF公式的使用说明

IF是条件判断函数,具体格式是=IF(条件,如果条件成立显示的内容,如果条件不成立显示的内容)
中间是用“,”分开的。
先给你简单的写个公式 =IF(A1=0,1,2)   这个公式的意思就是如果A1的值等于0,那么就显示1,否则显示2.

然后再来对照你的公式理解

=IF(I4="",IF(A4<>"",J3,""),A1)

首先是如果   i4=""(就是I4的值是空的),那么如果 A4<>""(A4不等于空,中间的<>是不等于的意思),那么就显示J3的内容,否则显示空。
再回到上面的I4="",若果这个条件不成立,则直接显示A1的内容。

星期八 发表于 2011-4-15 14:56:44

excel if函数 if函数嵌套用法
excel函数中 if函数的使用非常广泛,特别是在单条件判断的时候,用好 if函数可以帮我们完成很多功能。
最简单的 excel if函数应用
例子:下图数据在d列显示如下结果:如果数据1大于60则显示合格,否则显示不合格。
那么在d2单元格输入以下公式:
=if(a2>60,"合格","不合格")
然后向下拖拽,自动生成数据,如下图D列效果。
http://www.utosee.com/images/computer/excel_if_1.jpg
if函数必须的条件:
每一个 if函数必须使用英文的括号括起来;
括号内为三个数据,第一个数据是条件(如上例中的a2>60),第二数据为满足第一个数据后返回的结果,通常使用英文的引号括起来,第三个数据是不满足第一个数据时需要返回的结果;(如果不输入第三个数据可以吗,当然可以,返回什么结果自己试试吧)
经常出现的错误:
其中的符号如逗号和引号皆为英文(也就是所谓的半角);
if的右括号放在了条件的后面;(这是在多个条件使用if函数进行嵌套时非常容易犯的错误)
if函数嵌套用法
例子:下图数据,在e列显示如下结果:如果数据1小于60则显示不合格,如果大于等于60而小于80则显示合格,如果大于等于80而小于90显示良好,如果大于等于90则显示优秀。
这是经典的if嵌套应用例子,需要我们使用 if函数的嵌套。
if嵌套书写前,首先你要理解要求,并将要求数学化,也就是使用数学的模式表达出来,if函数多重嵌套一般情况下我们可以将它看做分段函数,那么问题就很容易解决了。例子可以在E2单元格使用如下代码:
=if(a2<60,"不合格",if(a2<80,"合格",if(a2<90,"良好","优秀")))
当数据1小于60时,显示不合格,这时在“不合格”逗号的右侧默认就是>=60的情况,那么根据题意,只需再满足<80即可显示合格,于是我们将最简单的 if函数的第三个数据变成了一个if函数,依次类推,每一次可以将一个if函数作为每一个基本函数的第三个数据,从而形成多种嵌套。
(图例中多余在最后一个 if前后加了一个括号,当然这种方法也正确,但不是最简单的。)
http://www.utosee.com/images/computer/excel_if_2.jpg
其实还有另一种写法,也就是将嵌套的if写在基本if函数的第二个数据的位置,如下图,不过这种写法不常用,也比较不好理解,并且容易写错,不推荐大家使用。
http://www.utosee.com/images/computer/excel_if_4.jpg
if函数的高级用法
if函数除了可以引用单元格的数据还可以引用函数值或者其他表格甚至是文件的数据。下面举个小例子:
下图数据1中,如果超过平均值的显示合格,达不到平均值的显示不合格。
函数代码如下:
=if(a2>average($a$2:$a$9),"合格","不合格")
这句话是这样理解的,当数据a2大于a2到a9所有数据的平均数时,返回合格,否则返回不合格。
其中average( )是求平均数函数,而$a$2:$a$9是绝对定位a2到a9的区域,如果不加$这个符号,我们在拖动单元格自动生成数据时a2就会变成a3,如果横向拖动时a2就会变成b2,这可不是我们想要的。关于这一点你可以自己尝试,如想了解更多关于excel绝对引用的知识可以参考这里,这篇文章还讲到了对其他表格的引用,有兴趣可以看看。
http://www.utosee.com/images/computer/excel_if_3.jpg
这个例子只是简单的函数举例,你可以根据自己的需要使用更加复杂的函数,将其和if函数组合使用,可以得到非常广阔的使用范围,大家可以自己试试

星期八 发表于 2011-4-15 15:07:19

Excel里的COUNTIF函数如何同时使用两个条件
一般要用SUM来配合设置多组条件:
例如:

求A1:A30范围内,数值等于255 和 331 的个数。

=SUM(COUNTIF(A1:A20,{"=255","=331"})*{1,1})

求A1:A30范围内,数值大于255小于331的个数

=SUM(COUNTIF(A1:A20,{">255",">=331"})*{1,-1})

求A1:A30范围内,数值小于255和大于或等于331的个数

=SUM(COUNTIF(A1:A20,{"<255",">=331"})*{1,1})
页: [1]
查看完整版本: excel的IF命令