Excel常用函数讲解.docx

上传人:b****6 文档编号:7513287 上传时间:2023-01-24 格式:DOCX 页数:11 大小:23.31KB
下载 相关 举报
Excel常用函数讲解.docx_第1页
第1页 / 共11页
Excel常用函数讲解.docx_第2页
第2页 / 共11页
Excel常用函数讲解.docx_第3页
第3页 / 共11页
Excel常用函数讲解.docx_第4页
第4页 / 共11页
Excel常用函数讲解.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

Excel常用函数讲解.docx

《Excel常用函数讲解.docx》由会员分享,可在线阅读,更多相关《Excel常用函数讲解.docx(11页珍藏版)》请在冰豆网上搜索。

Excel常用函数讲解.docx

Excel常用函数讲解

Excel函数应用

1、vlookup

2、midleftrightfindlenconcatenateindex

3、absrank

4、roundrounddownroundup

5、ifsumcount

6、monthtodayyear

7、datenowweekday

一、统计函数

有些函数在名称中多了一个字母A?

比如,AVERAGE与AVERAGEA;COUNT与COUNTA。

基本上,名称中带A的函数在统计时不仅统计数字,而且文本和逻辑值(如TRUE和FALSE)也将计算在内。

(一)用于求平均值的统计函数AVERAGE、TRIMMEAN

1、求参数的算术平均值函数AVERAGE

语法形式为AVERAGE(number1,number2,...)

其中Number1,number2,...为要计算平均值的1~30个参数。

这些参数可以是数字,或者是涉及数字的名称、数组或引用。

如果数组或单元格引用参数中有文字、逻辑值或空单元格,则忽略其值。

但是,如果单元格包含零值则计算在内。

2、求数据集的内部平均值TRIMMEAN

函数TRIMMEAN先从数据集的头部和尾部除去一定百分比的数据点,然后再求平均值。

当希望在分析中剔除一部分数据的计算时,可以使用此函数。

比如,我们在计算选手平均分数中常用去掉一个最高分,去掉一个最低分,XX号选手的最后得分,就可以使用该函数来计算。

语法形式为TRIMMEAN(array,percent)

其中Array为需要进行筛选并求平均值的数组或数据区域。

Percent为计算时所要除去的数据点的比例,例如,如果percent=0.2,在20个数据点的集合中,就要除去4个数据点(20x0.2),头部除去2个,尾部除去2个。

函数TRIMMEAN将除去的数据点数目向下舍为最接近的2的倍数。

●举例说明:

示例中也列举了带A的函数AVERAGEA的求解方法。

求选手Annie的参赛分数。

在这里,我们先假定已经将该选手的分数进行了从高到底的排序,在后面的介绍中我们将详细了解排序的方法。

图1

(二)用于求单元格个数的统计函数COUNT

语法形式为COUNT(value1,value2,...)

其中Value1,value2,...为包含或引用各种类型数据的参数(1~30个),但只有数字类型的数据才被计数。

函数COUNT在计数时,将把数字、空值、逻辑值、日期或以文字代表的数计算进去;但是错误值或其他无法转化成数字的文字则被忽略。

如果参数是一个数组或引用,那么只统计数组或引用中的数字;数组中或引用的空单元格、逻辑值、文字或错误值都将忽略。

如果要统计逻辑值、文字或错误值,应当使用函数COUNTA。

●举例说明COUNT函数的用途,示例中也列举了带A的函数COUNTA的用途。

仍以上例为例,要计算一共有多少评委参与评分(用函数COUNTA),以及有几个评委给出了有效分数(用函数COUNT)。

图2

(三)求区域中数据的频率分布FREQUENCY

由于函数FREQUENCY返回一个数组,必须以数组公式的形式输入。

语法形式为FREQUENCY(data_array,bins_array)

其中Data_array为一数组或对一组数值的引用,用来计算频率。

如果data_array中不包含任何数值,函数FREQUENCY返回零数组。

Bins_array为一数组或对数组区域的引用,设定对data_array进行频率计算的分段点。

如果bins_array中不包含任何数值,函数FREQUENCY返回data_array元素的数目。

看起来FREQUENCY的用法蛮复杂的,但其用处很大。

比如可以计算不同工资段的人员分布,公司员工的年龄分布,学生成绩的分布情况等。

这里以具体示例说明其基本的用法。

以计算某公司的员工年龄分布情况为例说明。

在工作表里列出了员工的年龄。

这些年龄为28、25、31、21、44、33、22和35,并分别输入到单元格C4:

C11。

这一列年龄就是data_array。

Bins_array是另一列用来对年龄分组的区间值。

在本例中,bins_array是指C13:

C16单元格,分别含有值25、30、35、和40。

以数组形式输入函数FREQUENCY,就可以计算出年龄在25岁以下、26~30岁、31~35岁、36~40岁和40岁以上各区间中的数目。

本例中选择了5个垂直相邻的单元格后,即以数组公式输入下面的公式。

返回的数组中的元素个数比bins_array(数组)中的元素个数多1。

第五个数字1表示大于最高间隔(40)的数值(44)的个数。

函数FREQUENCY忽略空白单元格和文本值。

{=FREQUENCY(C4:

C11,C13:

C16)}等于{2;2;2;1;1}

图3

(四)一组用于求数据集的满足不同要求的数值的函数

1、求数据集的最大值MAX与最小值MIN

这两个函数MAX、MIN就是用来求解数据集的极值(即最大值、最小值)。

函数的用法非常简单。

语法形式为函数(number1,number2,...),其中Number1,number2,...为需要找出最大数值的1到30个数值。

如果要计算数组或引用中的空白单元格、逻辑值或文本将被忽略。

因此如果逻辑值和文本不能忽略,请使用带A的函数MAXA或者MINA来代替。

2、求数据集中第K个最大值LARGE与第k个最小值SMALL

这两个函数LARGE、SMALL与MAX、MIN非常想像,区别在于它们返回的不是极值,而是第K个值。

语法形式为:

函数(array,k),其中Array为需要找到第k个最小值的数组或数字型数据区域。

K为返回的数据在数组或数据区域里的位置(如果是LARGE为从大到小排,若为SMALL函数则从小到大排)。

说到这,大家可以想得到吧。

如果K=1或者K=n(假定数据集中有n个数据)的时候,是不是就可以返回数据集的最大值或者最小值了呢。

3、求数据集中的中位数MEDIAN

MEDIAN函数返回给定数值集合的中位数。

所谓中位数是指在一组数据中居于中间的数,换句话说,在这组数据中,有一半的数据比它大,有一半的数据比它小。

语法形式为MEDIAN(number1,number2,...)其中Number1,number2,...是需要找出中位数的1到30个数字参数。

如果数组或引用参数中包含有文字、逻辑值或空白单元格,则忽略这些值,但是其值为零的单元格会计算在内。

需要注意的是,如果参数集合中包含有偶数个数字,函数MEDIAN将返回位于中间的两个数的平均值。

4、求数据集中出现频率最多的数MODE

MODE函数用来返回在某一数组或数据区域中出现频率最多的数值。

跟MEDIAN一样,MODE也是一个位置测量函数。

语法形式为MODE(number1,number2,...)其中Number1,number2,...是用于众数(众数指在一组数值中出现频率最高的数值)计算的1到30个参数,也可以使用单一数组(即对数组区域的引用)来代替由逗号分隔的参数。

●以上函数的示例

以某单位年终奖金分配表为例说明。

在示例中,我们将利用这些函数求解该单位年终奖金分配中的最高金额、最低金额、平均金额、中间金额、众数金额以及第二高金额等。

详细的公式写法可从图中清楚的看出,在此不再赘述。

图4

(五)用来排位的函数RANK、PERCENTRANK

1、一个数值在一组数值中的排位的函数RANK

数值的排位是与数据清单中其他数值的相对大小,当然如果数据清单已经排过序了,则数值的排位就是它当前的位置。

数据清单的排序可以使用Excel提供的排序功能完成。

语法形式为RANK(number,ref,order)其中Number为需要找到排位的数字;Ref为包含一组数字的数组或引用。

Order为一数字用来指明排位的方式。

⏹如果order为0或省略,则Excel将ref当作按降序排列的数据清单进行排位。

⏹如果order不为零,MicrosoftExcel将ref当作按升序排列的数据清单进行排位。

需要说明的是,函数RANK对重复数的排位相同。

但重复数的存在将影响后续数值的排位。

嗯,这就好像并列第几的概念啊。

例如,在一列整数里,如果整数10出现两次,其排位为5,则11的排位为7(没有排位为6的数值)。

2、求特定数值在一个数据集中的百分比排位的函数PERCENTRANK

此PERCENTRANK函数可用于查看特定数据在数据集中所处的位置。

例如,可以使用函数PERCENTRANK计算某个特定的能力测试得分在所有的能力测试得分中的位置。

语法形式为PERCENTRANK(array,x,significance)其中Array为彼此间相对位置确定的数字数组或数字区域。

X为数组中需要得到其排位的值。

Significance为可选项,表示返回的百分数值的有效位数。

如果省略,函数PERCENTRANK保留3位小数。

●与排名有关的示例

仍以某单位的年终奖金分配为例说明,这里以员工Annie的排名为例说明公式的写法。

奖金排名的公式写法为:

=RANK(C3,$C$3:

$C$12)

百分比排名的公式写法为:

=PERCENTRANK($C$3:

$C$12,C3)

图5

二、IF函数以及COUNTIF、SUMIF函数

(一)IF函数

IF函数用于执行真假值判断后,根据逻辑测试的真假值返回不同的结果,因此If函数也称之为条件函数。

它的应用很广泛,可以使用函数IF对数值和公式进行条件检测。

语法为IF(logical_test,value_if_true,value_if_false)。

其中Logical_test表示计算结果为TRUE或FALSE的任意值或表达式。

本参数可使用任何比较运算符。

如果第一个参数logical_test返回的结果为真的话,则执行第二个参数Value_if_true的结果,否则执行第三个参数Value_if_false的结果。

IF函数可以嵌套七层,用value_if_false及value_if_true参数可以构造复杂的检测条件。

Excel还提供了可根据某一条件来分析数据的其他函数。

例如,如果要计算单元格区域中某个文本串或数字出现的次数,则可使用COUNTIF工作表函数。

如果要根据单元格区域中的某一文本串或数字求和,则可使用SUMIF工作表函数。

(二)COUNTIF和SUMIF函数

在了解了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的优秀门数为两门。

其他人也可以依次看到。

●SUMIF

SUMIF函数可对满足某一条件的单元格区域求和,该条件可以是数值、文本或表达式,可以应用在人事、工资和成绩统计中。

三、文本函数

(一)大小写转换

LOWER--将一个文字串中的所有大写字母转换为小写字母。

UPPER--将文本转换成大写形式。

PROPER--将文字串的首字母及任何非字母字符之后的首字母转换成大写。

将其余的字母转换成小写。

这三种函数的基本语法形式均为函数名(text)。

示例说明:

已有字符串为:

pLeaseComEHere!

可以看到由于输入的不规范,这句话大小写乱用了。

通过以上三个函数可以将文本转换显示样式,使得文本变得规范。

参见图1

Lower(pLeaseComEHere!

)=pleasecomehere!

upper(pLeaseComEHere!

)=PLEASECOMEHERE!

proper(pLeaseComEHere!

)=PleaseComeHere!

图1

(二)取出字符串中的部分字符

您可以使用Mid、Left、Right等函数从长字符串内获取一部分字符。

具体语法格式为

●LEFT函数:

LEFT(text,num_chars)其中Text是包含要提取字符的文本串。

Num_chars指定要由LEFT所提取的字符数。

●MID函数:

MID(text,start_num,num_chars)其中Text是包含要提取字符的文本串。

Start_num是文本中要提取的第一个字符的位置。

●RIGHT函数:

RIGHT(text,num_chars)其中Text是包含要提取字符的文本串。

Num_chars指定希望RIGHT提取的字符数。

四、日期与时间函数

(一)取出当前系统时间/日期信息

用于取出当前系统时间/日期信息的函数主要有NOW、TODAY。

语法形式均为函数名()。

(二)取得日期/时间的部分字段值

如果需要单独的年份、月份、日数或小时的数据时,可以使用HOUR、DAY、MONTH、YEAR函数直接从日期/时间中取出需要的数据。

●上机练习:

做一个美观简洁的人事资料分析表

1、示例说明

在如图6所示的某公司人事资料表中,除了编号、员工姓名、身份证号码以及参加工作时间为手工添入外,其余各项均为用函数计算所得。

图6

在此例中我们将详细说明如何通过函数求出:

(1)自动从身份证号码中提取出生年月、性别信息。

(2)自动从参加工作时间中提取工龄信息。

2、身份证号码相关知识

在了解如何实现自动从身份证号码中提取出生年月、性别信息之前,首先需要了解身份证号码所代表的含义。

我们知道,当今的身份证号码有15/18位之分。

早期签发的身份证号码是15位的,现在签发的身份证由于年份的扩展(由两位变为四位)和末尾加了效验码,就成了18位。

这两种身份证号码将在相当长的一段时期内共存。

两种身份证号码的含义如下:

(1)15位的身份证号码:

1~6位为地区代码,7~8位为出生年份(2位),9~10位为出生月份,11~12位为出生日期,第13~15位为顺序号,并能够判断性别,奇数为男,偶数为女。

(2)18位的身份证号码:

1~6位为地区代码,7~10位为出生年份(4位),11~12位为出生月份,13~14位为出生日期,第15~17位为顺序号,并能够判断性别,奇数为男,偶数为女。

18位为效验位。

3、应用函数

在此例中为了实现数据的自动提取,应用了如下几个Excel函数。

(1)IF函数:

根据逻辑表达式测试的结果,返回相应的值。

IF函数允许嵌套。

语法形式为:

IF(logical_test,value_if_true,value_if_false)

(2)CONCATENATE:

将若干个文字项合并至一个文字项中。

语法形式为:

CONCATENATE(text1,text2……)

(3)MID:

从文本字符串中指定的起始位置起,返回指定长度的字符。

语法形式为:

MID(text,start_num,num_chars)

(4)TODAY:

返回计算机系统内部的当前日期。

语法形式为:

TODAY()

(5)DATEDIF:

计算两个日期之间的天数、月数或年数。

语法形式为:

DATEDIF(start_date,end_date,unit)

(6)VALUE:

将代表数字的文字串转换成数字。

语法形式为:

VALUE(text)

(7)RIGHT:

根据所指定的字符数返回文本串中最后一个或多个字符。

语法形式为:

RIGHT(text,num_chars)

(8)INT:

返回实数舍入后的整数值。

语法形式为:

INT(number)

4、公式写法及解释(以员工Andy为例说明)

说明:

为避免公式中过多的嵌套,这里的身份证号码限定为15位的。

如果您看懂了公式的话,可以进行简单的修改即可适用于18位的身份证号码,甚至可适用于15、18两者并存的情况。

(1)根据身份证号码求性别

=IF(VALUE(RIGHT(E4,3))/2=INT(VALUE(RIGHT(E4,3))/2),"女","男")

公式解释:

a.RIGHT(E4,3)用于求出身份证号码中代表性别的数字,实际求得的为代表数字的字符串

b.VALUE(RIGHT(E4,3)用于将上一步所得的代表数字的字符串转换为数字

c.VALUE(RIGHT(E4,3))/2=INT(VALUE(RIGHT(E4,3))/2用于判断这个身份证号码是奇数还是偶数,当然你也可以用Mod函数来做出判断。

d.=IF(VALUE(RIGHT(E4,3))/2=INT(VALUE(RIGHT(E4,3))/2),"女","男")及如果上述公式判断出这个号码是偶数时,显示"女",否则,这个号码是奇数的话,则返回"男"。

(2)根据身份证号码求出生日期

=CONCATENATE("19",MID(E4,7,2),"/",MID(E4,9,2),"/",MID(E4,11,2))

公式解释:

a.MID(E4,7,2)为在身份证号码中获取表示年份的数字的字符串

b.MID(E4,9,2)为在身份证号码中获取表示月份的数字的字符串

c.MID(E4,11,2)为在身份证号码中获取表示日期的数字的字符串

d.CONCATENATE("19",MID(E4,7,2),"/",MID(E4,9,2),"/",MID(E4,11,2))目的就是将多个字符串合并在一起显示。

(3)根据参加工作时间求年资(即工龄)

=CONCATENATE(DATEDIF(F4,TODAY(),"y"),"年",DATEDIF(F4,TODAY(),"ym"),"个月")

公式解释:

a.TODAY()用于求出系统当前的时间

b.DATEDIF(F4,TODAY(),"y")用于计算当前系统时间与参加工作时间相差的年份

c.DATEDIF(F4,TODAY(),"ym")用于计算当前系统时间与参加工作时间相差的月份,忽略日期中的日和年。

d.=CONCATENATE(DATEDIF(F4,TODAY(),"y"),"年",DATEDIF(F4,TODAY(),"ym"),"个月")目的就是将多个字符串合并在一起显示。

5.其他说明

在这张人事资料表中我们还发现,创建日期:

31-05-2001时显示在同一个单元格中的。

这是如何实现的呢?

难道是手工添加的吗?

不是,实际上这个日期还是变化的,它显示的是系统当前时间。

这里是利用函数TODAY和函数TEXT一起来创建一条信息,该信息包含着当前日期并将日期以"dd-mm-yyyy"的格式表示。

具体公式写法为:

="创建日期:

"&TEXT(TODAY(),"dd-mm-yyyy")

五、INDEX函数

INDEX用于返回表格或区域中的数值或对数值的引用。

函数INDEX()有两种形式:

数组和引用。

数组形式通常返回数值或数值数组;引用形式通常返回引用。

(1)INDEX(array,row_num,column_num)返回数组中指定单元格或单元格数组的数值。

Array为单元格区域或数组常数。

Row_num为数组中某行的行序号,函数从该行返回数值。

Column_num为数组中某列的列序号,函数从该列返回数值。

需注意的是Row_num和column_num必须指向array中的某一单元格,否则,函数INDEX返回错误值#REF!

(2)INDEX(reference,row_num,column_num,area_num)返回引用中指定单元格或单元格区域的引用。

Reference为对一个或多个单元格区域的引用。

Row_num为引用中某行的行序号,函数从该行返回一个引用。

Column_num为引用中某列的列序号,函数从该列返回一个引用。

需注意的是Row_num、column_num和area_num必须指向reference中的单元格;否则,函数INDEX返回错误值#REF!

如果省略row_num和column_num,函数INDEX返回由area_num所指定的区域。

六、CONCATENATE

将几个文本字符串合并为一个文本字符串。

语法:

CONCATENATE(text1,text2,...)

Text1,text2,...  为1到30个将要合并成单个文本项的文本项。

这些文本项可以为文本字符串、数字或对单个单元格的引用。

说明:

也可以用&(和号)运算符代替函数CONCATENATE实现文本项的合并。

七、ROUND、ROUNDUP、ROUNDDOWN

●ROUND

返回某个数字按指定位数取整后的数字。

语法:

ROUND(number,num_digits)

Number  需要进行四舍五入的数字。

Num_digits  指定的位数,按此位数进行四舍五入。

说明

如果num_digits大于0,则四舍五入到指定的小数位。

如果num_digits等于0,则四舍五入到最接近的整数。

如果num_digits小于0,则在小数点左侧进行四舍五入

●ROUNDDOWN

靠近零值,向下(绝对值减小的方向)舍入数字。

语法:

ROUNDDOWN(number,num_digits)

Number  为需要向下舍入的任意实数。

Num_digits  四舍五入后的数字的位数。

说明

函数ROUNDDOWN和函数ROUND功能相似,不同之处在于函数ROUNDDOWN总是向下舍入数字。

如果num_digits大于0,则向下舍入到指定的小数位。

如果num_digits等于0,则向下舍入到最接近的整数。

如果num_digits小于0,则在小数点左侧向下进行舍入。

●ROUNDUP

远离零值,向上舍入数字。

语法:

ROUNDUP(number,num_digits)

Number  为需要向上舍入的任意实数。

Num_digits  四舍五入后的数字的位数。

说明

函数ROUNDUP和函数ROUND功能相似,不同之处在于函数ROUNDUP总是向上舍入数字。

如果num_digits大于0,则向上舍入

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1