OFFICE学习资料 | OFFICE资源下载 | OFFICE知识问答      
设为首页
加入收藏
联系站长
  当前位置:Office学院 >> Excel >> Excel函数与公式 >> 正文
Excel函数应用之逻辑函数
[2006年10月26日]  点击数: 【字体: 】【双击滚屏
 
   用来判断真假值,或者进行复合检验的Excel函数,我们称为逻辑函数。在Excel中提供了六种逻辑函数。即AND、OR、NOT、FALSE、IF、TRUE函数。
   
    一、AND、OR、NOT函数
        这三个函数都用来返回参数逻辑值。详细介绍见下:
        (一)AND函数
        所有参数的逻辑值为真时返回 TRUE;只要一个参数的逻辑值为假即返回 FALSE。简言之,就是当AND的参数全部满足某一条件时,返回结果为TRUE,否则为FALSE。
    语法为AND(logical1,logical2, ...),其中Logical1, logical2, ... 表示待检测的 1 到 30 个条件值,各条件值可能为TRUE,可能为 FALSE。 参数必须是逻辑值,或者包含逻辑值的数组或引用。举例说明:
    1、 在B2单元格中输入数字50,在C2中写公式=AND(B2>30,B2<60)。由于B2等于50的确大于30、小于60。所以两个条件值(logical)均为真,则返回结果为TRUE。

 
    图1 AND函数示例1

    2、 如果 B1-B3 单元格中的值为 TRUE、FALSE、TRUE,显然三个参数并不都为真,所以 在B4单元格中的公式=AND(B1:B3) 等于 FALSE

 
    图2 AND函数示例2

(二)OR函数
    OR函数指在其参数组中,任何一个参数逻辑值为 TRUE,即返回 TRUE。它与AND函数的区别在于,AND函数要求所有函数逻辑值均为真,结果方为真。而OR函数仅需其中任何一个为真即可为真。比如,上面的示例2,如果在B4单元格中的公式写为=OR(B1:B3)则结果等于TRUE

 
    图3 OR函数示例

    (三)NOT函数
    NOT函数用于对参数值求反。当要确保一个值不等于某一特定值时,可以使用 NOT 函数。简言之,就是当参数值为TRUE时,NOT函数返回的结果恰与之相反,结果为FALSE.
    比如NOT(2+2=4),由于2+2的结果的确为4,该参数结果为TRUE,由于是NOT函数,因此返回函数结果与之相反,为FALSE。
   
    二、TRUE、FALSE函数
    TRUE、FALSE函数用来返回参数的逻辑值,由于可以直接在单元格或公式中键入值TRUE或者FALSE。因此这两个函数通常可以不使用。
   
    三、IF函数
    (一)IF函数说明
    IF函数用于执行真假值判断后,根据逻辑测试的真假值返回不同的结果,因此If函数也称之为条件函数。它的应用很广泛,可以使用函数 IF 对数值和公式进行条件检测。
    它的语法为IF(logical_test,value_if_true,value_if_false)。其中Logical_test表示计算结果为 TRUE或 FALSE 的任意值或表达式。本参数可使用任何比较运算符。
    Value_if_true显示在logical_test 为 TRUE 时返回的值,Value_if_true 也可以是其他公式。Value_if_false logical_test 为 FALSE 时返回的值。Value_if_false 也可以是其他公式。
    简言之,如果第一个参数logical_test返回的结果为真的话,则执行第二个参数Value_if_true的结果,否则执行第三个参数Value_if_false的结果。IF函数可以嵌套七层,用 value_if_false 及 value_if_true 参数可以构造复杂的检测条件。
    Excel 还提供了可根据某一条件来分析数据的其他函数。例如,如果要计算单元格区域中某个文本串或数字出现的次数,则可使用 COUNTIF 工作表函数。如果要根据单元格区域中的某一文本串或数字求和,则可使用 SUMIF 工作表函数。
    (二)IF函数应用
    1、 输出带有公式的空白表单

 
    图5 人事分析表1

    以图中所示的人事状况分析表为例,由于各部门关于人员的组成情况的数据尚未填写,在总计栏(以单元格G5为例)公式为:=SUM(C5:F5)
    我们看到计算为0的结果。如果这样的表格打印出来就页面的美观来看显示是不令人满意的。是否有办法去掉总计栏中的0呢?你可能会说,不写公式不就行了。当然这是一个办法,但是,如果我们利用了IF函数的话,也可以在写公式的情况下,同样不显示这些0。如何实现呢?只需将总计栏中的公式(仅以单元格G5为例)改写成:
    =IF(SUM(C5:F5),SUM(C5:F5),"")
    通俗的解释就是:如果SUM(C5:F5)不等于零,则在单元格中显示SUM(C5:F5)的结果,否则显示字符串。
    几点说明:
    (1) SUM(C5:F5)不等于零的正规写法是SUM(C5:F5)<>0,在EXCEL中可以省略<>0;
    (2) ""表示字符串的内容为空,因此执行的结果是在单元格中不显示任何字符。

 
    图4

    2、 不同的条件返回不同的结果
    如果对上述例子有了很好的理解后,我们就很容易将IF函数应用到更广泛的领域。比如,在成绩表中根据不同的成绩区分合格与不合格。现在我们就以某班级的英语成绩为例具体说明用法。

 
    图6


    某班级的成绩如图6所示,为了做出最终的综合评定,我们设定按照平均分判断该学生成绩是否合格的规则。如果各科平均分超过60分则认为是合格的,否则记作不合格。
    根据这一规则,我们在综合评定中写公式(以单元格B12为例):
    =IF(B11>60,"合格","不合格")
    语法解释为,如果单元格B11的值大于60,则执行第二个参数即在单元格B12中显示合格字样,否则执行第三个参数即在单元格B12中显示不合格字样。
    在综合评定栏中可以看到由于C列的同学各科平均分为54分,综合评定为不合格。其余均为合格。
    3、 多层嵌套函数的应用
    在上述的例子中,我们只是将成绩简单区分为合格与不合格,在实际应用中,成绩通常是有多个等级的,比如优、良、中、及格、不及格等。有办法一次性区分吗?可以使用多层嵌套的办法来实现。仍以上例为例,我们设定综合评定的规则为当各科平均分超过90时,评定为优秀。如图7所示。

 
    图7

    说明:为了解释起来比较方便,我们在这里仅做两重嵌套的示例,您可以按照实际情况进行更多重的嵌套,但请注意Excel的IF函数最多允许七重嵌套。
    根据这一规则,我们在综合评定中写公式(以单元格F12为例):
    =IF(F11>60,IF(AND(F11>90),"优秀","合格"),"不合格")
    语法解释为,如果单元格F11的值大于60,则执行第二个参数,在这里为嵌套函数,继续判断单元格F11的值是否大于90(为了让大家体会一下AND函数的应用,写成AND(F11>90),实际上可以仅写F11>90),如果满足在单元格F12中显示优秀字样,不满足显示合格字样,如果F11的值以上条件都不满足,则执行第三个参数即在单元格F12中显示不合格字样。
    在综合评定栏中可以看到由于F列的同学各科平均分为92分,综合评定为优秀。
    (三)根据条件计算值
    在了解了IF函数的使用方法后,我们再来看看与之类似的Excel提供的可根据某一条件来分析数据的其他函数。例如,如果要计算单元格区域中某个文本串或数字出现的次数,则可使用 COUNTIF 工作表函数。如果要根据单元格区域中的某一文本串或数字求和,则可使用 SUMIF 工作表函数。关于SUMIF函数在数学与三角函数中以做了较为详细的介绍。这里重点介绍COUNTIF的应用。
    COUNTIF可以用来计算给定区域内满足特定条件的单元格的数目。比如在成绩表中计算每位学生取得优秀成绩的课程数。在工资表中求出所有基本工资在2000元以上的员工数。
    语法形式为COUNTIF(range,criteria)。其中Range为需要计算其中满足条件的单元格数目的单元格区域。Criteria确定哪些单元格将被计算在内的条件,其形式可以为数字、表达式或文本。例如,条件可以表示为 32、"32"、">32"、"apples"。
    1、成绩表
    这里仍以上述成绩表的例子说明一些应用方法。我们需要计算的是:每位学生取得优秀成绩的课程数。规则为成绩大于90分记做优秀。如图8所示

 
    图8

    根据这一规则,我们在优秀门数中写公式(以单元格B13为例):
    =COUNTIF(B4:B10,">90")
    语法解释为,计算B4到B10这个范围,即jarry的各科成绩中有多少个数值大于90的单元格。
    在优秀门数栏中可以看到jarry的优秀门数为两门。其他人也可以依次看到。
    2、 销售业绩表
    销售业绩表可能是综合运用IF、SUMIF、COUNTIF非常典型的示例。比如,可能希望计算销售人员的订单数,然后汇总每个销售人员的销售额,并且根据总发货量决定每次销售应获得的奖金。
    原始数据表如图9所示(原始数据是以流水单形式列出的,即按订单号排列)

 
    图9 原始数据表

    按销售人员汇总表如图10所示

 
    图10 销售人员汇总表

    如图10所示的表完全是利用函数计算的方法自动汇总的数据。首先建立一个按照销售人员汇总的表单样式,如图所示。然后分别计算订单数、订单总额、销售奖金。
    (1) 订单数 --用COUNTIF计算销售人员的订单数。
    以销售人员ANNIE的订单数公式为例。公式:=COUNTIF($C$2:$C$13,A17)
    语法解释为计算单元格A17(即销售人员ANNIE)在"销售人员"清单$C$2:$C$13的范围内(即图9所示的原始数据表)出现的次数。
    这个出现的次数即可认为是该销售人员ANNIE的订单数。
    (2) 订单总额--用SUMIF汇总每个销售人员的销售额。
    以销售人员ANNIE的订单总额公式为例。公式:
    =SUMIF($C$2:$C$13,A17,$B$2:$B$13)
    此公式在"销售人员"清单$C$2:$C$13中检查单元格A17 中的文本(即销售人员ANNIE),然后计算"订单金额"列($B$2:$B$13)中相应量的和。
    这个相应量的和就是销售人员ANNIE的订单总额。
    (3) 销售奖金--用IF根据订单总额决定每次销售应获得的奖金。
    假定公司的销售奖金规则为当订单总额超过5万元时,奖励幅度为百分之十五,否则为百分之十。根据这一规则仍以销售人员ANNIE为例说明。公式为:
    =IF(C17<50000,10%,15%)*C17
    如果订单总额小于 50000则奖金为 10%;如果订单总额大于等于 50000,则奖金为 15%。
    至此,我们已完全了解了EXCEL函数的逻辑函数,相信大家在实际工作中会想出更多更有用的运用。


我要提问
上一篇:Excel函数应用之数学和三角函数
下一篇:Excel中一些常见公式的错误提示
最新文章
Excel中一些常见公式的错误提示12/06
Excel如何计算表达式10/27
Excel 2000如何避免错误信息10/27
Excel 2000自定义函数10/27
Excel 2000条件显示10/27
Excel函数应用教程:函数与公式的概念10/27
Excel函数应用教程:函数的参数10/27
Excel函数应用教程:函数的输入方法10/27
热门文章
相关文章
给你ACCESS数据库文件减肥
VB两种操作Access数据库方法的比
ACCESS:跨数据库查询的SQL语句
关于ACCESS数据库安全的几个问题
从菜鸟成为Excel高手 之 IS函数
从菜鸟成为Excel高手 之 If函数
巧用Excel建立数据库大法!
利用Excel 的宏功能来做学生成绩
office知识问答 | office资源下载
备案许可证号: 津ICP备06003561号
版权所有:Office学院 www.officeXY.com
OFFICE学院致力于成就华人社区最受欢迎的office办公软件学习园地;为大家提供word、excel、access、FrontPage、PowerPoint等Office各个系列产品的最全的教程、用法、技巧、方案;并竭力打造最方便的问题解答系统