Excel 常用五类函数汇总
工欲善其事,必先利其器
不因为你会Python而成为数据分析师,而是能用任何工具解决问题,Excel因为其简单易用,而受到人们的青睐。
本节整理了常用的EXCEL函数,包含文本清洗类、关联匹配类、逻辑运算类、计算统计类、时间序列类五类,针对不同的函数,进行归类和汇总。
一、文本清洗类
Len
统计文本字符串中字符数目(计算文本的长度)
LEN(text)
LEN(目标单元格)
Find
检索字符位置(区分大小写)
FIND(find_text,within_text,start_num)
FIND(要查找的内容加引号或单元格,查找区域(单元格),从几个字开始查找)
Left 从一个文本字符串的第一个字符开始,截取指定数目的字符
LEFT(text,num_chars)
LEFT(目标单元格,从内容的左边开始截取指定的字的个数)
Right 从一个文本字符串的最后一个字符开始,截取指定数目的字符
RIGHT(text,num_chars)
RIGHT(目标单元格,从内容的右边开始截取指定的字的个数)
Mid 从一个文本字符串的指定位置开始,截取指定数目的字符
MID(text,start_num,num_chars)
MID(目标单元格,内容的左边指定开始位置,指定截取的字的个数)
Text 将数值转换成自由的显示格式文本
TEXT(value,format_text)
TEXT(源数据,要显示的方式代码)
Concatenate
将多个字符文本或单元格中的数据连接在一起,显示在一个单元格中
CONCATENATE(text1,text2,……)
CONCATENATE(目标单元格或加引号的文本1,目标单元格或加引号的文本2,……)
Trim
删除多余的空格字符
TRIM(text)
TRIM(目标单元格)
Replace
替换指定字符数的文本
REPLACE(old_text,start_num,num_chars,new_text)
REPLACE(替换其部分字符的文本,是要用new_text替换的old_text中字符的位置,替换中字符的个数,要用于替换文本)
Substitute
检索替换文本
SUBSTITUTE(text,old_text,new_text,instance_num)
SUBSTITUTE(目标单元格,旧内容,新内容,替换第几个或全替换)
二、关联匹配类
Lookup搜索单行、单列、区域、查找对应值
向量形式LOOKUP(lookup_value,lookup_vector,result_vector)
向量形式LOOKUP(条件,含条件的搜索区域,对应的搜索区域)
数组形式LOOKUP(lookup_value,array)
数组形式LOOKUP(条件,搜索的区域)
Vlookup
按照垂直方向搜索区域
VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)
VLOOKUP(要查找的内容,搜索的区域,从查找区域首列开始到要找的内容的列数,指定是近似匹配还是精确匹配查找方式)
Row返回行序号
ROW(reference)
ROW(目标单元格)
Column返回序列号
COLUMN(reference)
COLUMN(目标单元格)
Index返回行和列交叉位置的值
INDEX(array,row_num,column_num)
INDEX(单元格区域或数组常量,行序号,列序号)
Offset 计算指定位置的单元格引用
OFFSET(reference,rows,cols,height,width)
OFFSET(起始坐标,从坐标开始算的行数,从坐标开始算的列数,高,宽)
Match返回搜索值的相对位置
MATCH(lookup_value,lookup_array,match_type)
MATCH(查找条件,查找区域,查找方式)
Hyperlink创建超链接
HYPERLINK(link_location,friendly_name)
HYPERLINK(目标地址或单元格引用,显示说明或单元格引用)
三、逻辑运算类
And 检测所有的条件是否为真
AND(logical1,logical2,……logical30)AND(要判断的单元格)
Or 检测任意一项条件是否为真
OR(logical1,logical2,……logical30)
OR(要判断的单元格)
Not 对表示条件的参数的逻辑值求反
NOT(logical)
NOT(要判断的单元格)
True表示总是为真
TRUE()
不需要参数
False表示总是为假
FALSE()
不需要参数
IF
根据条件满足与否返回不同的值
IF(logical_test,value_if_true,value_if_false)
IF(条件,条件满足时时返回的值,条件不满足时返回的值)
四、计算统计类
Sum 求和计算
SUM(number1,number2, ...) SUM(列名) SUM(行名)
SUM(单个或多个单元格) SUM(列的名称 如:AA) SUM(行的名称 如:1:1)
Rank
计算位置(排位)
RANK(number,ref,order)
RANK(要判断的单元格,查找的区域,1为最小数排第一0为最大数排第一)
Sumif
对满足条件的单元格的数值求和
SUMIF(range,criteria,sum_range)
SUMIF(要找的内容所在的区域,要找的内容,与要找的内容所在的区域对应的数值区域)
Sumproduct
先计算多个数组的元素之间的乘积再求和
SUMPRODUCT(array1,array2,……array30)
SUMPRODUCT(数据1,数据2,……,数据30)
Rand 产生大于或等于0且小于1的随机数
RAND()
RAND()不需要参数
Randbetween 产生指定数值之间的随机数
RANDBETWEEN(bottom,top)
RANDBETWEEN(最小整数,最大整数)
Substotal 计算各种总计值
SUBTOTAL(function_num,ref1,ref2,……ref29)
SUBTOTAL(计算方式,要计算的区域)
Countif
计算满足条件的单元格计数
COUNTIF(range,criteria)
COUNTIF(要找的内容所在的区域,要找的内容)
Averagea 计算所有数据的平均值
AVERAGEA(value1,value2,...)
AVERAGEA(单元格或单元格区域)
Max 计算数值的最大值
MAX(单元格或单元格区域)
MAXA(单元格或单元格区域)
Min 计算数值的最小值
MIN(number1,number2,...)
MIN(单元格或单元格区域)
Quartile
计算四分位数
QUARTILE(array,quart)
QUARTILE(数字区域,指定在哪个位置)
Round 根据指定的位数位置四舍五入
ROUND(number,num_digits)
ROUND(目标单元格,要保留位数)
Int 将数值向下舍入为最接近的整数
INT(number)
INT(要转换的单元格)
五、时间序列类
Year 从日期中提取出"年"
YEAR(serial_number)
YEAR(要查的单元格)
Month 从日期中提取出"月"
MONTH(serial_number)
MONTH(要查的单元格)
Day 从日期中提取出"日"
DAY(serial_number)
DAY(要查的单元格)
Weekday 计算除了周末和节假日之外的日期
WORKDAY(start_date,days,holidays)
WORKDAY(指定日期,几个工作日,自己特定的非工作日)
Weeknum 计算从1月1日算起的第几个星期
WEEKNUM(serial_num,return_type)
WEEKNUM(日期,2)
Date 从年、月、日来计算日期
DATE(year,month,day)
DATE(年,月,日)
Now 计算当前的日期和时间
NOW()
NOW()该函数没有参数,但必须要有()
Today
计算当前的日期
TODAY()
TODAY()返回当前的日期
【参考】