excel函数之逻辑函数.docx
- 文档编号:16911314
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:45
- 大小:747.28KB
excel函数之逻辑函数.docx
《excel函数之逻辑函数.docx》由会员分享,可在线阅读,更多相关《excel函数之逻辑函数.docx(45页珍藏版)》请在冰点文库上搜索。
excel函数之逻辑函数
Excel函数应用之逻辑函数
Excel是办公室自动化中非常重要的一款软件,很多巨型国际企业都是依靠Excel进行数据管理。
它不仅仅能够方便的处理表格和进行图形分析,其更强大的功能体现在对数据的自动处理和计算,然而很多缺少理工科背景或是对Excel强大数据处理功能不了解的人却难以进一步深入。
用来判断真假值,或者进行复合检验的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。
图1AND函数示例1
2、如果B1-B3单元格中的值为TRUE、FALSE、TRUE,显然三个参数并不都为真,所以在B4单元格中的公式=AND(B1:
B3)等于FALSE
图2AND函数示例2
(二)OR函数
OR函数指在其参数组中,任何一个参数逻辑值为TRUE,即返回TRUE。
它与AND函数的区别在于,AND函数要求所有函数逻辑值均为真,结果方为真。
而OR函数仅需其中任何一个为真即可为真。
比如,上面的示例2,如果在B4单元格中的公式写为=OR(B1:
B3)则结果等于TRUE
图3OR函数示例
(三)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_falselogical_test为FALSE时返回的值。
Value_if_false也可以是其他公式。
简言之,如果第一个参数logical_test返回的结果为真的话,则执行第二个参数Value_if_true的结果,否则执行第三个参数Value_if_false的结果。
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
根据这一规则,我们在综合评定中写公式(以单元格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的强大函数功能,为我们带来了极大方便,虽然它有200多个函数,但有时我们为实现一项规定的功能,可能用到几个函数或者采用嵌套函数,这样应用起来,也不太方便。
其实对于我们经常用到的功能,我们可以创建自定义函数UDF(User—definedfunction),它的运行与Excel中自带的函数完全相同。
建立自定义函数有以下几个优点:
建立自己特殊的功能和名称的函数;能将复杂的、嵌套的、多个原有的函数组合在一起,发挥更大的威力。
比如现在我们要根据收入来计算个人收入调节税,按照规定每月收入减去800元基础后,除去养老保险金、失业保险金、医疗保险金、住房公积金、工会费,对剩下的余额征收个税。
余额在500元内的征收余额的5%,余额为500~2000元的征收余额的10%,余额为2000~5000元的征收余额的15%……征收个税的最高税率为45%(余额在10万元以上的)。
如果用Excel的函数,则要进行多层if嵌套,稍有不注意,可能造成计算上差错,我们建立自己的函数来解决这个问题。
首先进入Excel,在[工具]→[宏]→[VisulBasic编辑器](也可按组合键[Alt+F11]),在“VisulBasic编辑器”中选择[插入]→[添加模块],在代码窗口输入下列函数:
Functiontax(incomeAsSingle)AsSingle
SelectCaseincome
Case0To800
tax=0
Case800.01To1300
tax=(income-800)*0.05
Case1300.01To2800
tax=(income-1300)*0.1+25
Case2800.01To5800
tax=(income-2800)*0.15+175
Case5800.01To20800
tax=(income-5800)*0.2+625
Case20800.01To40800
tax=(income-20800)*0.25+3625
Case40800.01To60800
tax=(income-40800)*0.3+8625
Case60800.01To80800
tax=(income-60800)*0.35+14625
Case80800.01To100800
tax=(income-80800)*0.4+21625
CaseIs>=100800
tax=(income-100800)*0.45+29625
CaseIs<0
MsgBox"你的工资"&&income&&"输入有误"
EndSelect
EndFunction
我们知道,Excel中函数都有一个说明,帮助使用,我们也要给这个函数添加一个说明。
在工具栏中选择“对象浏览器”(如图1),选择我们所做Tax模块,在其[右键]→[属性]中添加关于对这个函数的描述,这个描述将出现在Excel中关于函数的说明中,如果你要对软件保密的话,在“模块”上按右键,[VBAproject属性]→[保护中设置密码],嘿嘿!
别人就看不到你的源程序了。
图1添加自制函数说明
这时,退出,回到Excel界面,将这个文件另存为:
类型为“MicrosoftExcel加载宏”,在Excel2000中,它会自动更改保存位置为c:
\windows\applicationdata\microsoft\addins(系统装在c:
\windows),当然,你也可以把这个文件tax.xla,直接复制到office\library(office的安装路径下),而在Excel97中只能放在后一个位置。
使用函数很简单,点击[工具]→[加载宏],在你创建的Tax前打个勾,在单元格直接输入“=tax()”,是不是像Microsoftoffice提供的函数一样(如图2),很有点专业味道。
图2使用自制函数
假如你把调用这个宏的Excel文件拷贝到别的机子上运行,会出现“当前所要打开的文档含有其他文档的链接,是否要使用其他工作簿中的改动更新当前工作簿”的提示,可以显示原先计算的数据,这是因为在Excel中的[工具]→[选项]→[重新计算]中,一般选中“保存外部链接数据”,但你不能重新计算,因为不能链接这个宏,别人机子上根本就没有这个函数。
图3我的函数好像不够专业
只不过在“加载宏”时,我自己创建的函数,是一个英文标题,而且下面也没有说明(如图3),你是不是觉得有点不够专业。
跟我来,再教你一招,如果你使用的是Excel2000时,找到tax.xla,点击[右键]→[属性]→[摘要](如图4),在描述里添加所需内容来对函数进行相关描述,其中“标题”部分将出现在“加载宏”的方框中,“备注”部分将出现在下面的函数说明部分。
这时再看看,够不够专业。
在Excel97中也可以在其右键属性中作相应更改。
图4添加中文描述
函数名 功能 用途示例
ABS 求出参数的绝对值。
数据计算
AND “与”运算,返回逻辑值,仅当有参数的结果均为逻辑“真(TRUE)”时返回逻辑“真(TRUE)”,反之返回逻辑“假(FALSE)”。
条件判断
Excel的数据处理功能在现有的文字处理软件中可以说是独占鳌头,几乎没有什么软件能够与它匹敌。
在您学会了Excel的基本操作后,是不是觉得自己一直局限在Excel的操作界面中,而对于Excel的函数功能却始终停留在求和、求平均值等简单的函数应用上呢?
难道Excel只能做这些简单的工作吗?
其实不然,函数作为Excel处理数据的一个最重要手段,功能是十分强大的,在生活和工作实践中可以有多种应用,您甚至可以用Excel来设计复杂的统计管理表格或者小型的数据库系统。
请跟随笔者开始Excel的函数之旅。
这里,笔者先假设您已经对于Excel的基本操作有了一定的认识。
首先我们先来了解一些与函数有关的知识。
一、什么是函数
Excel中所提的函数其实是一些预定义的公式,它们使用一些称为参数的特定数值按特定的顺序或结构进行计算。
用户可以直接用它们对某个区域内的数值进行一系列运算,如分析和处理日期值和时间值、确定贷款的支付额、确定单元格中的数据类型、计算平均值、排序显示和运算文本数据等等。
例如,SUM 函数对单元格或单元格区域进行加法运算。
函数是否可以是多重的呢?
也就是说一个函数是否可以是另一个函数的参数呢?
当然可以,这就是嵌套函数的含义。
所谓嵌套函数,就是指在某些情况下,您可能需要将某函数作为另一函数的参数使用。
例如图1中所示的公式使用了嵌套的 AVERAGE 函数,并将结果与 50 相比较。
这个公式的含义是:
如果单元格F2到F5的平均值大于50,则求F2到F5的和,否则显示数值0。
图1 嵌套函数
在学习Excel函数之前,我们需要对于函数的结构做以必要的了解。
如图2所示,函数的结构以函数名称开始,后面是左圆括号、以逗号分隔的参数和右圆括号。
如果函数以公式的形式出现,请在函数名称前面键入等号(=)。
在创建包含函数的公式时,公式选项板将提供相关的帮助。
图2 函数的结构
公式选项板--帮助创建或编辑公式的工具,还可提供有关函数及其参数的信息。
单击编辑栏中的"编辑公式"按钮,或是单击"常用"工具栏中的"粘贴函数" 按钮之后,就会在编辑栏下面出现公式选项板。
整个过程如图3所示。
图3 公式选项板
三、函数的种类
Excel函数一共有11类,分别是数据库函数、日期与时间函数、工程函数、财务函数、信息函数、逻辑函数、查询和引用函数、数学和三角函数、统计函数、文本函数以及用户自定义函数。
1.数据库函数--当需要分析数据清单中的数值是否符合特定条件时,可以使用数据库工作表函数。
例如,在一个包含销售信息的数据清单中,可以计算出所有销售数值大于 1,000 且小于 2,500 的行或记录的总数。
Microsoft Excel 共有 12 个工作表函数用于对存储在数据清单或数据库中的数据进行分析,这些函数的统一名称为 Dfunctions,也称为 D 函数,每个函数均有三个相同的参数:
database、field 和 criteria。
这些参数指向数据库函数所使用的工作表区域。
其中参数 database 为工作表上包含数据清单的区域。
参数 field 为需要汇总的列的标志。
参数 criteria 为工作表上包含指定条件的区域。
2.日期与时间函数--通过日期与时间函数,可以在公式中分析和处理日期值和时间值。
3.工程函数--工程工作表函数用于工程分析。
这类函数中的大多数可分为三种类型:
对复数进行处理的函数、在不同的数字系统(如十进制系统、十六进制系统、八进制系统和二进制系统)间进行数值转换的函数、在不同的度量系统中进行数值转换的函数。
4.财务函数--财务函数可以进行一般的财务计算,如确定贷款的支付额、投资的未来值或净现值,以及债券或息票的价值。
财务函数中常见的参数:
未来值 (fv)--在所有付款发生后的投资或贷款的价值。
期间数 (nper)--投资的总支付期间数。
付款 (pmt)--对于一项投资或贷款的定期支付数额。
现值 (pv)--在投资期初的投资或贷款的价值。
例如,贷款的现值为所借入的本金数额。
利率 (rate)--投资或贷款的利率或贴现率。
类型 (type)--付款期间内进行支付的间隔,如在月初或月末。
5.信息函数--可以使用信息工作表函数确定存储在单元格中的数据的类型。
信息函数包含一组称为 IS 的工作表函数,在单元格满足条件时返回 TRUE。
例如,如果单元格包含一个偶数值,ISEVEN 工作表函数返回 TRUE。
如果需要确定某个单元格区域中是否存在空白单元格,可以使用 COUNTBLANK 工作表函数对单元格区域中的空白单元格进行计数,或者使用 ISBLANK 工作表函数确定区域中的某个单元格是否为空。
6.逻辑函数--使用逻辑函数可以进行真假值判断,或者进行复合检验。
例如,可以使用 IF 函数确定条件为真还是假,并由此返回不同的数值。
7.查询和引用函数--当需要在数据清单或表格中查找特定数值,或者需要查找某一单元格的引用时,可以使用查询和引用工作表函数。
例如,如果需要在表格中查找与第一列中的值相匹配的数值,可以使用 VLOOKUP 工作表函数。
如果需要确定数据清单中数值的位置,可以使用 MATCH 工作表函数。
8.数学和三角函数--通过数学和三角函数,可以处理简单的计算,例如对数字取整、计算单元格区域中的数值总和或复杂计算。
9.统计函数--统计工作表函数用于对数据区域进行统计分析。
例如,统计工作表函数可以提供由一组给定值绘制出的直线的相关信息,如直线的斜率和 y 轴截距,或构成直线的实际点数值。
10.文本函数--通过文本函数,可以在公式中处理文字串。
例如,可以改变大小写或确定文字串的长度。
可以将日期插入文字串或连接在文字串上。
下面的公式为一个示例,借以说明如何使用函数 TODAY 和函数 TEXT 来创建一条信息,该信息包含着当前日期并将日期以"dd-mm-yy"的格式表示。
11.用户自定义函数--如果要在公式或计算中使用特别复杂的计算,而工作表函数又无法满足需要,则需要创建用户自定义函数。
这些函数,称为用户自定义函数,可以通过使用 Visual Basic for Applications 来创建。
以上对Excel函数及有关知识做了简要的介绍,在以后的文章中笔者将逐一介绍每一类函数的使用方法及应用技巧。
但是由于Excel的函数相当多,因此也可能仅介绍几种比较常用的函数使用方法,其他更多的函数您可以从Excel的在线帮助功能中了解更详细的资讯。
3、 多层嵌套函数的应用
在上述的例子中,我们只是将成绩简单区分为合格与不合格,在实际应用中,成绩通常是有多个等级的,比如优、良、中、及格、不及格等。
有办法一次性区分吗?
可以使用多层嵌
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- excel 函数 逻辑