很高兴和你相遇
这里正在记录我的所思所学
订阅免费邮件通讯接收最新内容
首页 归档 想法 通讯 播客 工具 简历 关于

Excel 初级公式

懒是人类进步的绊脚石,偷懒是人类进步的阶梯。如果完成任何一项工作时觉得复杂,那一定就有还不知道的更简单的方法。

基本知识

Excel 可以处理的数值有效位数最多为 15 位,公式中文本类型的常量必须写在半角双引号内

运算符包括算数运算符和比较运算符,其中比较运算符返回逻辑值

<> 表示不等于

excel 所有数据类型中,数值最小,文本大于数值,最大的是逻辑值 true

文本运算符 & 可以将两个数据合并为一个文本类型数据

引用运算符 冒号 单个空格 逗号 其中单个空格返回空格左右两边的单元格引用的交叉区域,而逗号返回左右两边单元格引用的合并区域

相对引用和绝对引用往往混合使用效果更佳,注意,F4 可以快速切换

如果想确定使用提示列表里的某个函数可以按 tab 键补全,另外 ctrl+shift+A 可以显示出所有需要的参数

SUMIF 函数

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

如果条件区域和求和区域相同,只需要写出求和区域即可

条件区域的写法 ">100" "<>100"

求和条件可以是数字 文本 单元格引用格式 也可以是公式,文本必须在双引号之间

SUMIFS 可以用来多条件求和

注意:AVERAGEIF 按照条件求平均值,用法和 SUMIF 相同

按照模糊条件求和时可以结合通配符使用

SUMIF(范围,“Chr*”,求和范围)

关于通配符,excel 中只有两种通配符,分别是?和* ,其中*代表任意字符,? 代表单一字符

写法可以如下 SUMIF(范围,“”“&A2&”, 求和范围) 表示匹配中间内容是 A2 单元格的

COUNTIF

=COUNTIF(单元格区域,计数条件) 参数可以是数字,表达式和单元格引用以及文本字符串,且可以使用比较运算符和通配符

例如=COUNTIF(A2:A10,"??") 或者 (A2:A10,""&B2&"")

如果想用 COUNTIF 统计所有非真空单元格个数,可以使用筛选条件"<>"

COUNTBLANK 专门用来统计所有空单元格个数

COUNTA 统计所有非真空单元格个数

COUNT 统计所有数值单元格个数

另外,在我们日常数据的过程中,很可能会用到多条件统计

  • COUNTIFS(A1:A10,">=60",B1:B10,">=80")

如何对数据进行取舍,方法很多且都很常用

  • ROUND(取舍的数值,保留的位数)
    • 需要注意的是,其中保留的位数可正可负可 0,差别自己试一下就知道了
    • 如果你想强行向上取舍,使用 ROUNDUP
    • 反之如果你想强行向下取舍,使用 ROUNDDOWN

取整还可以用 INT 和 TRUNC

对字符串进行操作

首先是对字符串进行合并

  • excel 可以非常方便的对数据进行分类,点一下鼠标就可以了。但是有的时候我们想把几列的内容合并起来,可是并没有一个合列的选项。如果想用合并单元格,这会犯非常低级的错误。
  • 可以使用 CONCATENATE 函数
  • CONCATENATE(A2,A3,"任意其它字符串",A4) 想怎么合就怎么合,如果觉得函数太长,好吧,可以用&

有的时候我们还想统计一下文本的长度

  • 长度可以用字符和字节来表示,其中一个中文占一个字符,占两个字节
  • 统计字符长度用 LEN()
  • 统计字节长度用 LENB()
  • 注意,如果一个函数针对的是字符,那么再后面加上 B 往往就可以处理字符了

excel 本身是不区分大小写的,可以使用函数 EXACT 来完成

如果你想查找一个字符所在的位置,咋整

  • 可以使用 FIND 或者 SEARCH(查找的字符,查找的位置,从第几个字符开始查找)
  • 注意,只有 FIND 可以区分大小写,只用 SEARCH 可以使用通配符,如果想把通配符当作普通字符来处理,需要再*前面加~

截取字符

  • 可左可右可中间
  • 左边 LEFT(要处理的字符串,6 要提取的字符个数)
  • 右边 RIGHT 同理
  • 中间多了一个参数。 MID(要处理的字符串,从第几个字符开始提取,提取几个字符)

替换字符,似乎可以查找替换啊。但是,类似与 linux 中的 sed,excel 中有两个函数可以使用,一个是 SUBSTITUTE,另一个是 REPLACE

  • SUBSTITUTE(需要替换字符的文本或者单元格引用,需要替换的文本,需要替换成什么,替换第几次出现的字符)
    • 注意,这个函数是用来替换指定文本的,如果不知道具体文本,只是想在指定位置进行替换要使用下面的函数
  • REPLACE(需要替换字符的文本或者指定的单元格,要替换的起始位置,替换字符的个数,要替换成什么)
    • 比如给电话号码中间四位加星号,就可以用这个函数 =REPLACE(A1,4,4,"") 1850697

常用的查找函数

VLOOKUP 最常用的函数,具体的用法就是(你找啥,在哪找,要找对应的那一列,精确查找还是模糊查找)

有几点需要注意

  • 第一个参数可以使用通配符进行模糊匹配
  • 查找区域中匹配的内容必须位于第一列
  • 有多个对应值只会返回第一个值
  • 0/FALSE 表示精确匹配,excel 里的说明有问题

在平时的实际应用中,有一个问题曾经困扰了我很久。就是怎么同时返回多列对应 的数值。

  • 这个问题可以通过对第一第二个参数使用绝对引用,对第三个参数使用相对应用,利用 COLUMN 函数。

  • =VLOOKUP(E2,E2,A2:2:D$100,COLUMN(B:B),0)

MATCH 可以在某一个范围内搜索特定的项

  • MATCH(要查找的内容,搜索的区域,匹配类型)
  • 查找的内容可以是值,数字,单元格引用
  • 查找的范围只能是一行或者一列
  • 匹配类型有三种
    • -1 MATCH 查找大于或等于查找值的最小值,查找范围内的值必须按降序排列
    • 1 小于或者等于查找值的最大值,查找范围内的值必须按照升序排列
    • 0 完全等于
  • MATCH 返回的是位置而非值本身,匹配文本时不区分大小写
  • 同样可以配合通配符使用

INDEX 返回所在区域交叉处的位置

  • INDEX(范围,行序号,列序号)

如果将 INDEX 和 MATCH 连用可以解决 VLOOKUP 的一些问题

  • 比如 =INDEX($A2:2:C33,MATCH("ARR1",33,MATCH("ARR1",A2:2:A$33,0),3) 即可以进行逆向搜索。

本文作者:思考问题的熊

版权声明:本博客所有文章除特别声明外,均采用 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议 (CC BY-NC-ND 4.0) 进行许可。

如果你对这篇文章感兴趣,欢迎通过邮箱或者微信订阅我的 「熊言熊语」会员通讯,我将第一时间与你分享肿瘤生物医药领域最新行业研究进展和我的所思所学所想点此链接即可进行免费订阅。


· 分享链接 https://kaopubear.top/blog/2017-10-09-excelfunctionbasic/