excel函数从0到掌握(官方文档+自我解析)

我写到一半,发觉网上的资料还不如,wps自带的视频讲解,在这里提醒你们一下!(不是打广告,视频免费)

四大运算符

算术运算符

excel算术运算符有:加、减、乘、除、乘幂(^)及百分号(%)。
  加法运算(加号+):47+24
  减法运算(减号-):47-24
  乘法运算(星号*):47*24
  除法运算(正斜线/):47/24
  幂运算(插入符号):4724
  连接数字产生数字结果运算(百分号%):47%

比较运算符

excel比较运算符有:大于、大于或等于、小于、小于或等于、等于、不等于,结果返回一个逻辑值:TRUE或FALSE。
  比如:47>24,返回TRUE。
  47>=24,返回TRUE。
  47<24,返回FALSE。
  47<=24,FALSE。
  47=24,返回FALSE。
  47<>24,返回TRUE。

文本运算符

通常用于把单元格区域合并计算。用于连接多个文本,以产生一串新的文本字符串,以(&)连接;
  如:“blwbbs”&".com ",结果为:blwbbs.com。

引用运算符

excel引用运算符包括:区域运算符、联合运算符、交叉运算符。

  • 区域运算符(英文冒号:):对包括在两个引用之间的所有单元格的引用,如:A1:C10。
  • 联合运算符(英文逗号,):把多个引用合并为一个引用,如:COUNT(A24:B4,D2:F6)。
  • 交叉运算符(空格):对两个引用区域交叉的单元格区域的引用,结果可以是一个单元格,也可以是一个区域,如:=SUM(A2:E5 B1:D9),结果是对A2:E5和B1:D9 交叉的区域(B2:D5)求和。

优先级

在这里插入图片描述

1、 count

首先介绍的就是count函数-实现对数值型数字的计数
也就是说,如果单元格里面有文字,那就不计算文字
例:

只是拿现成表做演示,请不要纠结具体内容意义
第一行统计个数为5,即实现对数值型数据的计数;
第二、三行和第一行对对比,即不统计文本、不统计单元格包含文本的数据
在这里插入图片描述

2、counta

统计范围内非空单元格的个数

第一行统计了非空单元格的个数’;
第二行展示了不看单元格内容;
第三行显示了有一个空值的个数
在这里插入图片描述

3、countif

语法为 : COUNTIF ( Range, Criteria )即 COUNTIF ( 区域, 条件 )

  • range :必要,要计算其中非空单元格数目的区域。
  • criteria :必要,以数字、表达式或文本形式定义的条件。

从函数的名字其实可以看出,像是count+if的组合,其实差不多,该函数就是对数值型数据进行条件计数
也就是countif(区间,条件),值得注意的是,像我们这种初学excel函数的人,对语法不太熟悉,这里写条件,必须用引号包裹住条件
例:

=COUNTIF(A2:E2,“>1”)
在这里插入图片描述

①求某类型单元格的个数
例1:求语文成绩是空值的个数,G2输入“=COUNTIF(C2:C7,“”)”。
在这里插入图片描述
例2: 求语文成绩是非空值的个数,G2输入“=COUNTIF(C2:C7,“<>”&“”)”。

在这里插入图片描述
②求大于或小于某个值的单元格个数

例:求语文成绩大于90分的个数。G2输入“=COUNTIF(C2:C7,“>90”)”

在这里插入图片描述

③等于或包含某N个特定字符的单元格个数
例1:求陈某的个数,用通配符表示任意一串字符。G2输入“=COUNTIF(A1:A7,"陈")”。
在这里插入图片描述
例2:获取2个字符姓名的个数。G2输入“=COUNTIF(A2:A7,“??”)”

在这里插入图片描述

4、countifs

语法为 : COUNTIFS ( Range1, Criteria1, Range2, Criteria2 …[Range_n],[Criteria_n] )
即COUNTIFS(条件匹配查询区域1,条件1,条件匹配查询区域2,条件2,以此类推…)

作用
作用:COUNTIFS函数用于执行与COUNTIF函数类似的工作,不同之处在于可多个范围内分配多个条件。 但是,在增加计数之前,所有检查都必须为true。
用法及实例
①单一条件计数,比如求大于或小于某个值的单元格个数

例:求语文成绩大于90分的个数。G2输入“=COUNTIFS(C2:C7,“>90”)”
在这里插入图片描述
②多条件计数(都同时满足)

例:获取语、数、英成绩90以上的个数,G2输入“=COUNTIFS(C2:C7,“>=90”,D2:D7,“>=90”,E2:E7,“>=90”)”。

在这里插入图片描述

conutif和countifs的区别

  1. 当然就是s的区别啦,前者智能统计一个,后者能单个或多个,所以掌握后者就ok!
  2. 再次对咱们这种小白强调语法!
    • 条件,一定要用,英文的单引号或双引号,引起来!
    • 如果条件引用的不是具体的数值,而是某个文本框,如就是我们要计算某一区域大于这个单元格值(因为单元格是可以变得,这样就做到了动态修改)的个数,
    • 格式为:"符号条件"&单元格,例如:">="&C1

5、sum

如果读者看了上面,就知道这三个函数大概得意义和联系了,我就不一一解答
sum:SUM函数用于返回某一单元格区域中所有数值之和
多表扩展
扩展案例(多表汇总)

某企业要求对全年12个月的销售数据进行汇总,每个月的报表结构相同、字段顺序一致,如下图所示(以1月和12月为例)
在这里插入图片描述
在这里插入图片描述

问题:要求将以上12张工作表中的数据进行汇总,制作全年汇总表
在这里插入图片描述

1.在"全年汇总"工作表中选中B2:F8单元格区域,在编辑栏输入公式=SUM(‘*’!B2)

注意公式中的符号都要求在英文半角状态下输入
在这里插入图片描述

2.同时按住<Ctrl+Enter>组合键,将公式批量填充到选中的区域中,公式会自动转换为=SUM(‘1:12’!B2),其中公式中“‘1:12’”的作用是引用1月至12月的连续多张工作表
在这里插入图片描述

由于公式中的’B2’使用的是相对引用形式,所以随着公式向下、向右填充会自动引用对应位置的单元格,如F8单元格的公式为=SUM(‘1:12’!F8)
在这里插入图片描述

补充:对公式=SUM('‘!B2)的解析:
1.SUM函数支持跨工作表进行多表汇总
2.SUM函数支持通配符,如公式中的’
‘代表任意字符长度的工作表名称
3.公式中的’*‘代表除当前工作表以外的所有其他工作表,两边的单引号’'的作用是引用工作表名称
4.公式中的感叹号!是连接符,用于连接工作表名称和单元格引用
5.按<Ctrl+Enter>组合键输入,作用是将公式批量填充到选中区域的每一个单元格

6、sumif

语法: SUMIF(range,criteria,[sum_range])

range:条件所在区域

criteria:条件表达式

sum_range:求和数据所在区域

当第一参数和第三参数相同时,第三参数可以省略

SUMIF函数用于根据指定的条件对指定区域的数据进行条件求和(单个条件下的数据汇总)
案例1:要求统计数学90分以上的学生成绩之和

在这里插入图片描述

上述公式也可以写成=SUMIF(B2:B12,“>=90”)

案例2:要求统计南京路店的销售总和

在这里插入图片描述
案例3:要求统计商品C的销售总和
在这里插入图片描述
案例4:要求统计批发渠道的销售总和在这里插入图片描述
案例2-4讲的都是按照精确匹配进行汇总(单条件精确匹配汇总)
案例5:要求统计小米品牌的销售总和
在这里插入图片描述
案例6:要求统计手机的销售总和

在这里插入图片描述
案例5-6的公式中都使用了通配符"*",它可以代表任意长度的文本字符串,上述两个案例题属于单条件模糊匹配汇总问题

案例7:跨列条件精确匹配汇总

某企业要求对业务员的业绩完成情况按计划和实际分别统计,要求在H列中统计所有月份的计划合计数,在I列中统计所有月份的实际合计数
在这里插入图片描述

案例8:跨列条件模糊匹配汇总

在这里插入图片描述

选中N2:O13单元格区域输入公式=SUMIF($B 1 : 1: 1:M$1,“*”&N 1 , 1, 1,B2:$M2),按<Ctrl + Enter>组合键将公式填充至选中区域的每一个单元格

在这里插入图片描述

7、sumifs

语法: SUMIFS(sum_range,criteria_range1,criteria1,[criteria_range2,criteria2],…)

sum_range:求和区域

criteria_range:条件区域

criteria:条件

SUMIFS函数用于按照多个条件对数据进行条件汇总
SUMIFS函数可以根据实际需求不断增加条件区域和对应的条件,实现对同时满足多个条件下的数据进行汇总,其中每一对条件区域和条件要彼此匹配,多对条件区域和条件之间的顺序可以互换,不影响计算结果

案例1:要求统计数学90分以上的学生成绩之和
在这里插入图片描述
案例2:要求统计语文80至90分之间的学生成绩之和
在这里插入图片描述
上述案例1-2都是对同一个字段进行多条件约束,对多种字段多条件约束时,也可以借助SUMIFS函数实现自动计算

案例3:要求统计南京路店的销售商品B的总和
在这里插入图片描述
案例4:要求统计订单金额大于400的商品C的销售总和在这里插入图片描述

案例5:要求统计批发渠道的商品A的订单金额大于500的销售总和
在这里插入图片描述

上述案例3-5都是针对多条件精确匹配汇总,即使遇到按照关键字查询的多条件模糊匹配汇总,也可以使用Excel中的通配符配合SUMIFS函数实现自动计算

案例6:要求统计和平路店小米品牌的销售总和
在这里插入图片描述
案例7:要求统计中山路店订单金额低于5000的笔记本的销售总和
在这里插入图片描述

公式中的关键点在于条件参数中使用了通配符

SUMIF函数与SUMIFS函数的语法结构区别

以单个条件为例分别展开这两个函数的语法结构进行对比:

SUMIF(条件区域,条件,求和区域)

SUMIFS(求和区域,条件区域,条件)

从语法结构能够看出两者之间的明显差别,SUMIFS函数由于要对多个条件进行判断,所有第一参数就是求和区域,其他成对的条件区域和条件放置在后面,而SUMIF函数的求和区域则放置在第三参数

8、if

我自己得博文,我就写成自己看得懂得样子了
if(条件,true,false)
条件可以和and,or,not组合使用,例:

公式说明
=IF(A2>B2,TRUE,FALSE)如果 A2 大于 B2,则返回 TRUE,否则返回 FALSE
=IF(AND(A3>B2,A3<C2),TRUE,FALSE)如果 A3 大于 B2,并且 A3 小于 C2,则返回 TRUE,否则返回 FALSE
=IF(OR(A4>B2,A4<B2+60),TRUE,FALSE)如果 A4 大于 B2,或 A4 小于 B2 + 60,则返回 TRUE,否则返回 FALSE
=IF(NOT(A5>B2),TRUE,FALSE)如果 A5 不大于 B2,则返回 TRUE,否则返回 FALSE

9、日期函数

1.Excel中的时间和日期

日期:

  • Excel中采用1900-1-1纪年法
  • 本质上是整数
  • 整数代表整天:1代表1天,即1900-1-1
    时间: 是指具体的时间(小时、分钟),在进行时间运算时,要先进行单位统一

2.日期相关的函数

date(年,月,日): 日期函数:得到组合之后的日期,并且可以自动进位
year(日期): 得到某日期的年
month(日期): 得到日期的月
day(日期): 得到日期的日
datedif(开始日期,结束日期,返回值):

  • 基本用法: 比较两个日期之间的间隔,并返回想要得到的值
  • 返回值(六种模式): “y”(年),“m”(月),“d”(日)
    • “ym”(去掉年份之后的月数)
    • “md”(去掉月份之后的天数)
    • “yd”(去掉年数之后的天数)
      注意: 开始日期要比结束日期小
  • weeknum(日期,模式—一周的起始): 得到日期所在年的第几周
  • weekday(日期,模式—一周的起始): 得到日期所在周的第几天

3.日期相关的应用

日期推算(date函数)

  • 日期+天数: 直接相加即可(因为日期本质上是整数)
  • 日期+月数: 思路:利用data函数组合【date(year(),month()+月份,day())】
  • 本月最后一天: 思路:本月最后一天即下个月1号的前一天【date(year(),month()+1,0)】
  • 本月总天数: 思路:先得到本月最后一天,然后用day函数得到天数即可【day(date(year(),month()+1,0)】
    计算日期间隔(datedif函数)
  • 计算工作年限: 思路:利用datedif()函数,得到间隔年数【datedif(开始日期,结束日期,“y”)】

4.整容大师(text函数

text(目标,目标样式): 文本函数,以目标样式得到目标值的文本格式

  • 日期—>星期几(2021/4/3–>星期六): text(2021/4/3,“aaaa”)
  • 将假日期变成真日期(20201119—>2020-11-19): text(20201119,“0000-00-00”)*1

10、vlookup

首先当然是官方看球不懂英文的文档:
VLOOKUP (lookup_value, table_array, col_index_num, [range_lookup])

  • Lookup_value为需要在数据表第一列中进行查找的数值。Lookup_value 可以为数值、引用或文本字符串。

当vlookup函数第一参数省略查找值时,表示用0查找。

  • Table_array为需要在其中查找数据的数据表。使用对区域或区域名称的引用。

  • col_index_num为table_array 中查找数据的数据列序号。

    • col_index_num 为 1 时,返回 table_array 第一列的数值

    • col_index_num 为 2 时,返回 table_array 第二列的数值,以此类推。

    • 如果 col_index_num 小于1,函数 VLOOKUP 返回错误值 #VALUE!;

    • 如col_index_num 大于 table_array 的列数,函数 VLOOKUP 返回错误值#REF!。

  • Range_lookup为一逻辑值,指明函数 VLOOKUP 查找时是精确匹配,还是近似匹配。如果为FALSE或0,则返回精确匹配,如果找不到,则返回错误值 #N/A。如果 range_lookup 为TRUE或1,函数 VLOOKUP 将查找近似匹配值,也就是说,如果找不到精确匹配值,则返回小于 lookup_value 的最大数值。如果range_lookup 省略,则默认为1。

好,现在就是我的个人理解:
vlookup(根据条件查找的源数据,进行查找的数据,返回的第几列数,近似还是精确)
现在再来解析一下:
其实懂不懂一个函数,我们要事先知道他是用来干嘛的,比如,我们有这张表,称为表A:
在这里插入图片描述
然后还有这张缺失数据的表,称为表B:
在这里插入图片描述
好!聪明的你们肯定看得出我们需要补什么了吧?那么问题来了,一个一个复制吗?nonono!

  1. 首先我们需要查找的源数据(主体)是工单号,我们的第一个参数就有了!
  2. 第二个参数是啥?就是我们根据要查找的源数据(主体)总得有个数据,也就是范围去找吧,不然拿出来干嘛,那我们就选择我们需要查找得数据表A,选择我们得范围,值得注意得是,我们第三个参数是返回第几列,所以,你选择范围得时候必须也把需要得参数列包裹进去!
    • 第二个参数得范围:从我们查找的源数据为第一列(start),到我们需要返回的参数列为止(end)!
  3. 第三个参数就最好解释了,每一列对应一个列号,你想返回哪一列,就写哪一列,有提示!
  4. 第四个就是精确还是近似。不写或者TRUE就是近似匹配,0或者FALSE就是精确匹配!

好,我们来看看wps的官方题解!(我懒得打实例,还有就是网上的实例都烂!)
VLOOKUP函数 查询指定条件的结果(WPS官方题解)

11、match

match函数用来返回查找数据相对应的行/列号
首先还是先来点官方文档:
MATCH(lookup_value,lookup_array,match_type)

  • Lookup_value 为需要在 Look_array 中查找的数值。
    • 例如,如果要在电话簿中查找某人的电话号码,则应该将姓名作为查找值,但实际上需要的是电话号码。
  • Lookup_value 可以为数值(数字、文本或逻辑值)或对数字、文本或逻辑值的单元格引用。
  • Lookup_array 可能包含所要查找的数值的连续单元格区域。lookup_array 应为数组或数组引用。
  • Match_type 为数字 -1、0 或 1

接下来又是我自己的理解:
语法:match(要查找的对象,行/列范围,比对方式)
这里就只说一下比对方式不同值的区别:
1: 函数查找小于或等于查找对象的值,取最大值,前提是查找范围数据顺序必须为升序(升序从小到大嘛,才有可能小于或者等于)
0:函数查找 等于 查找对象的第一个值,查找范围
-1:函数查找大于或等于查找对象的值,取最小值,前提是查找范围数据顺序必须为降序(降序从大到小嘛,才有可能大于或者等于)

特别说明

  1. 函数 MATCH 返回 lookup_array 中目标值的位置,而不是数值本身。例如,MATCH(b,{a,b,c},0) 返回 2,即“b”在数组 {a,b,c} 中的相应位置。
  2. 查找文本值时,函数 MATCH 不区分大小写字母。
  3. 如果函数 MATCH 查找不成功,则返回错误值 #N/A。
  4. 如果 MATCH_type 为 0 且 lookup_value 为文本,lookup_value 可以包含通配符、星号 (*) 和问号 (?)。星号可以匹配任何字符序列;问号可以匹配单个字符。

okokok!好的文章怎么可能会没有实例呢!还是那句话,我自己不爱写,网上的又烂!继续看看wps的实例吧

WPS之match函数

12、index

根据指定的行/列号,以及区域号返回对应的记录
老规矩,先来点官方的:
index(array, row_num, [column_num])
array:提供我们按照要求返回的数据区域,不然你指定行/列号,我们拿什么数据来做参考呢?
row_num:行号,返回哪一行
column_num:列号,返回哪一列

  1. 如果数组只包含一行或一列, 则相应的 row_num 或 column_num 参数是可选的。

  2. 如果数组具有多行和多列, 并且仅使用 row_num 或 column_num, 则 INDEX 返回数组中整个行或列的数组。

  3. row_num:必需,选择数组中的某行,函数从该行返回数值。 如果省略 row_num, 则需要 column_num。

  4. column_num:可选,选择数组中的某列,函数从该列返回数值。 如果省略 column_num, 则需要 row_num。

实例(当然不可能自己写,我一看就会(自豪.jpg)):
WPS之index

关于match和index函数的组合使用

其实你们也不要想的那么复杂,你想想嘛:

  • 一个是返回数据所在的位置(match)
  • 一个是根据提供的位置,返回数据(index)
    这不就出来了,我们就可以把index要求的位置,换成由我们match来提供不就行了?
    老规矩!组合在视频后半段!
    WPS之match和index组合使用

-------------------------------------------------------------------------------------------

相关学习小知识补充

一、问号(?)和星号(*)

在Excel中可以使用问号(?)和星号(*)作为通配符,以方便查找操作。

  • 问号(?)代表一个字符
  • 星号(*)代表一个或多个字符。

需要注意的问题是,既然问号(?)和星号(*)作为通配符使用,
那么如何查找问号(?)和星号(*)呢?只要在这两个字符前加上波浪号(~)就可以了。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

·惊鸿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值