首页 理论教育 函数、IF函数、RANK函数、COUNTIF和SUMIF

函数、IF函数、RANK函数、COUNTIF和SUMIF

时间:2023-10-18 理论教育 版权反馈
【摘要】:图3.94复制公式自动得到的显示结果这就是IF函数最基本的应用。图3.95全班成绩的三个等级显示注意:在输入公式或函数时,所有的符号必须是西文半角状态。图3.96使用RANK函数得到全班排名4.COUNTIF和SUMIFCOUNTIF,顾名思义,对区域中满足单个指定条件的单元格进行计数。

函数、IF函数、RANK函数、COUNTIF和SUMIF

1.MAX函数、MIN函数、AVERAGE函数

新建工作表“成绩”,在A1至D1单元格中分别录入列标题“学号”“平时”“期末”“总评”,在A2:D15单元格区域中输入相应数据。在C16、C17和C18单元格中分别使用MAX、MIN和AVERAGE函数求出班级期末的最高分、最低分和平均分,而后将C16、C17和C18单元格中的函数用填充柄相应地向右复制到D16、D17和D18单元格,得出班级总评分数的最高分、最低分和平均分,如图3.91所示。

图3.91 使用MAX、MIN和AVERAGE函数

2.IF函数

如果设定两个成绩等级:60分及以上为“及格”,60分以下为“不及格”,怎样能够让Excel自动根据总评成绩显示出成绩等级呢?

在E1单元格中输入“成绩等级”,选中E2单元格,单击“公式”→“函数库”→“插入函数”,打开如图3.92所示的“插入函数”对话框。选择“逻辑”类别中的“IF”函数,单击“确定”按钮

图3.92 “插入函数”对话框

在弹出的如图3.93所示的“函数参数”对话框中,输入IF函数的相应参数如下:

图3.93 “函数参数”对话框

(1)Logical_test(逻辑表达式):D2>=60。

(2)Value_if_true(逻辑表达式结果为真):及格。

(3)Value_if_false(逻辑表达式结果为假):不及格。

完成两个参数的输入后,系统会自动为输入内容添加引号。参数输入完毕后单击“确定”按钮,则在E2单元格中自动出现了“及格”两个汉字,此时D2中的总评分数大于60。用填充柄将E2单元格中的函数复制到E3到E15单元格,则全班的成绩等级自动以汉字方式显示,如图3.94所示。

图3.94 复制公式自动得到的显示结果

这就是IF函数最基本的应用。

IF函数的基本语法为:

IF(logical_test,value_if_true,value_if_false)

IF函数具有下列参数:

(1)logical_test:计算结果可能为TRUE或FALSE的任意值或表达式。例如,“D2>=60”就是一个逻辑表达式,如果D2单元格中的值大于等于60,表达式的计算结果为TRUE;否则,为FALSE。

(2)value_if_true:logical_test参数的计算结果为TRUE时所要返回的值。例如,如果此参数的值为文本字符串“及格”,并且logical_test参数的计算结果为TRUE,则IF函数返回文本“及格”。

(3)value_if_false:logical_test参数的计算结果为FALSE时所要返回的值。例如,如果此参数的值为文本字符串“不及格”,并且logical_test参数的计算结果为FALSE,则IF函数返回文本“不及格”。

在Excel 2016中最多可以使用64个IF函数作为value_if_true和value_if_false参数进行嵌套

仍旧继续上例,如果增加一个成绩等级为“优秀”,规定80分及以上为“优秀”,如何实现自动显示呢?

在E2单元格中输入“=IF(D2>=60,IF(AND(D2>=80),"优秀","及格"),"不及格")”,或者在E2单元格中打开IF函数的“函数参数”对话框,在“value_if_true”文本框中输入“IF(AND(D2>=80),"优秀","及格")”,确认后即可看到E2单元格中显示成绩等级为“优秀”。同样的,将函数复制到E3到E15单元格,即可得到全班的成绩等级显示,如图3.95所示。

图3.95 全班成绩的三个等级显示

注意:在输入公式或函数时,所有的符号必须是西文半角状态。

3.RANK函数

在成绩统计中常常需要进行排名,RANK函数提供了该功能。它返回一个数字在数字列表中的排位,数字的排位是其在一列数字中相对于其他数值的大小排名(如果列表已排过序,则数字的排位就是它当前的位置),其语法为:

RANK(number,ref,order)

其各个参数的含义为:(www.xing528.com)

(1)number:需要找到排位的数字。

(2)ref:数字列表数组或对数字列表的引用。

(3)order:可选的一个数字,指明数字排位的方式。如果order为零或省略,对数字的排位是基于ref的按照降序排列的列表;如果order不为零,对数字的排位是基于ref的按照升序排列的列表。

打开“成绩”工作表,在F1单元格中输入“排名”,在F2单元格中插入函数“=RANK(D2,$D$2:$D$15)”,确认后则在F2单元格中显示“5”,将函数复制到F3至F15单元格后得到全班排名。

如果将全班成绩按照总评成绩降序排序,则排序结果与该序列相同。

图3.96 使用RANK函数得到全班排名

4.COUNTIF和SUMIF

COUNTIF,顾名思义,对区域中满足单个指定条件的单元格进行计数。例如,它可以对以某一字母开头的所有单元格进行计数,也可以对大于或小于某一指定数字的所有单元格进行计数。例如,假设有一个工作表在A列中包含一列任务,在B列中包含分配了每项任务的人员的名字。可以使用COUNTIF函数计算某人员的名字在B列中的显示次数,这样便可确定分配给该人员的任务数。例如:=COUNTIF(B2:B25,"Nancy")。

COUNTIF函数的语法为:COUNTIF(range,criteria)其中,range参数给定计数的数据区域,criteria参数给出计数的条件。

继续以“成绩”表为例,在I1单元格中输入“成绩统计分析”,将I1到K1单元格合并后居中,在I2至I5以及J2和K2单元格中输入如图3.97所示的行标题和列标题,在J3单元格中输入函数“=COUNTIF($E$2:$E$15,I3)”。确认后即可得到本班级成绩等级为“优秀”的人数,复制函数到J4和J5单元格后可得到其他等级的人数。

图3.97 在J3单元格中输入函数

SUMIF函数可以对区域(区域指工作表上的两个或多个单元格,区域中的单元格可以相邻或不相邻)中符合指定条件的值求和。例如,假设在含有数字的某一列中,需要让大于5的数值相加,可以使用以下公式:=SUMIF(B2:B25,">5")。在本例中,应用条件的值即要求和的值。如果需要,可以将条件应用于某个单元格区域,但却对另一个单元格区域中的对应值求和。例如,使用公式“=SUMIF(B2:B5,"John",C2:C5)”时,SUMIF函数仅对C2:C5单元格区域中所有与B2:B5单元格区域中等于“John”的单元格对应的单元格中的值求和。

SUMIF函数的语法为:

SUMIF(range,criteria,sum_range)其中,range参数指定用于条件计算的单元格区域;criteria参数用于确定对哪些单元格求和,其形式可以为数字、表达式、单元格引用、文本或函数,例如条件可以表示为32、“>32”、B5、“32”、“苹果”或`TODAY()。

继续以“成绩”表为例,在K3单元格中输入函数“=SUMIF($E$2:$E$15,I3,$D$2:$D$15)/J3”,得到该成绩区间的平均分,同样,复制函数到K4和K5单元格后可得到其他成绩区间的平均分。

图3.98 在K3单元格输入函数

注意:给定的数据区域必须是绝对引用,才能使用函数复制而不影响函数的意义。

5.FREQUENCY

FREQUENCY(频次)函数用于计算数值在某个区域内的出现频率,然后返回一个垂直数组。例如,使用函数FREQUENCY可以在分数区域内计算测验分数的个数。由于函数FREQUENCY返回一个数组,所以它必须以数组公式的形式输入。其语法为:

FREQUENCY(data_array,bins_array)其中,data_array是要计算频率的一个数值数组或对一组数值的引用;bins_array是一个区间数组或对区间的引用,该区间用于对data_array中的数值进行分组。

在选择了用于显示返回的分布结果的相邻单元格区域后,函数FREQUENCY应以数组公式的形式输入。请注意,FREQUENCY函数返回的数组中的元素个数比bins_array中的元素个数多1个,多出来的元素表示最高区间之上的数值个数。例如,如果要为3个单元格中输入的3个数值区间计数,请务必在4个单元格中输入FREQUENCY函数以获得计算结果,多出来的单元格将返回data_array中第三个区间值以上的数值个数。

打开“成绩”表,在L1至N1单元格中输入标题“成绩段”“分段点”“各成绩段人数”,需要分别统计各成绩区间有多少人数,在M2:M7单元格区域输入统计成绩的分段点,选中N2:N8单元格区域,单击“公式”→“函数库”→“插入函数”,打开“插入函数”对话框,选择“统计”类别中的“FREQUENCY”函数,在弹出的“函数参数”对话框中分别输入“D2:D15”和“M2:M7”,之后按下Ctrl+Shift+Enter组合键确认数组函数输入完毕,则出现如图3.99所示的结果。

图3.99 使用FREQUENCY函数

6.VLOOKUP函数

VLOOKUP函数是个查找与引用函数,它可以搜索某个单元格区域(可以相邻或不相邻)的第一列,然后返回该区域相同行上任何单元格中的值。例如,假设A2:C11单元格区域中包含雇员列表,雇员的ID号存储在该单元格区域的第一列,如图3.100所示。

图3.100 “员工信息”工作表

如果知道雇员的ID号,则可以使用VLOOKUP函数返回该雇员所在的部门或其姓名。例如,若要获取104号雇员的姓名,可以在C6单元格中输入函数“=VLOOKUP(104,A2:C11,3,FALSE)”。此函数将搜索A2:C11区域的第一列中的值“104”,然后返回该区域同一行中第三列包含的值作为查询结果,确认后则在C6单元格中显示出函数的运算结果“赵军”。该函数中的第一个参数“104”也可以使用单元格地址,例如“A6”,使用单元格地址的优点是当A6单元格中的数据发生变化后,函数会自动查找A6单元格变化后的当前数据并返回相应列的数据。

VLOOKUP中的“V”表示垂直方向,如果要搜索某个单元格区域的第一行,然后返回该区域相同列上任何单元格中的值,可以使用HLOOKUP函数,其中“H”表示水平方向查找。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈