长沙分类信息网-长沙新闻网

Excel函数集锦(一)

2024-3-12 18:36:01发布次查看发布人:
011-基础
1. 文本型公式转换为常规性,并计算。
a. 数据-分列-文本分列向导-撤选分隔符号-常规。
b. 替换”=“为”=“。
2. 公式及其结果的相互切换:【ctrl+~】。
3. 特殊的比较运算符:(≠);>=(≥);<=(≤)。
4. 公式的引用区域。
a. 普通区域:b2:e6。
b. 交叉区域:c3:d7 d6:e9。(中间为空格,两个区域的交集/交叉区域 )。
c. 合并区域:b4:c8,c7:d10。(如两个区域存在重合,重合部分重复计算)。
5. r1c1模式。
选项卡-公式-r1c1引用样式。(row 1, cloumn 1)
r1c1模式是将行字母abc…变更为数字显示123…。(b4→r4c2,行4列2)
6. 换出excel帮助:f1。
7. 输入”函数名称+(”后,按ctrl+shift+a,会自动输入函数的参数名称
例: “sumif(“-ctrl+shift+a-”=sumif(range,criteria,sum_range) “。
8. 返回错误值的原因。
a. #div/0!:除数为0;(=1/0, eg.)
b. #value!:使用了错误的数值类型;(=“abc”+1, eg.)
c. #n/a:函数缺乏可用数据,常见于查找、匹配函数;(=match(a1,b:b,0), eg.)
d. #num!:函数中数值型参数无效;(=sqrt(-4), eg.)
e. #ref!:函数中存在无效的引用;(=sqrt(#ref!), eg.)
f. #name:函数名称或参数设置错误无法识别;(=sqt(-4), eg.)
g. #null!:公式引用的多个区域无公共区域;(=sum(a1:b2 c3:d4) , eg.)
9. 通配符:”*”,””:””可以代替任意一位字符,而”*”可以代替任意个数连续的字符。
022-逻辑函数
1. 简单的直接比较。
a. “=2+1>=5”→false.
b. “=3*25” →true.
2. is系列:被引用单元格是……吗?
a. istext(a1) : 被引用单元格是文本(text)吗?
b. isblank(a1) : 被引用单元格是空单元格(blank)吗?
c. iserr(a1) : 被引用单元格是#n/a以外的错误吗?
d. iserror(a1): 被引用单元格是错误吗?
e. isna(a1): 被引用单元格是#n/a错误吗?(#n/a即无值可用)
f. isnumber(a1) : 被引用单元格是数值(型)吗?
3. if(logical,true,false)函数。
a. iferror(f1(x),f2(x)):如果f1(x)无错误,返回f1(x);如果f1(x)有错误,返回f2(x);
b. ifna(f1(x),f2(x)):同上;
4. and、or、not函数。
a. and(log1,log2,…) :所有条件都成立时,返回true;反之,false 。
b. or(log1,log2,…) :只要有一个条件成立,返回true;反之,false。
c. not(log1) :条件不成立时,返回true;反之,false。
033-数理统计
1. sum、sumif、sumifs函数。
a. sum(a1,a2,…)。
*true和false的逻辑值在sum函数中时,按1和0计算;
b. sumif(a:a,c1,b:b):三个参数中间的特征值不仅可以是数值,也可以是逻辑判断,甚至模糊数值。
例:sumif (a2:a5,”>160000”,b2:b5);sumif (a2:a5,”>“ & c2,b2:b5);sumif (b:b,”西*”,c:c):sumif (b:b,西&”*”,c:c);sumif (b:b, “”,c:c);sumif (a2:a7,”“,c2:c7)。
多行多列的情况:sumif (e2:i14,l2,f2:j14)。
c. sumif(a:a,”>3”)。
忽略错误值汇总的方法:sumif(a:a,”<=9e307”)
d. sumifs (求和区域,条件区域1,条件1,条件区域2,条件2…)
2. average、averageif、averageifs函数。
该系列函数用法同sum,会自动忽略空单元格(非0)、非数值单元格,但是不会忽略错误项。
3. count系列
a. countif(区域,条件)
countif(区域,”“““):求区域内单元格个数。
countif(区域,”=“):求区域内真空单元格个数。
countif(区域,”“):求区域内所有空单元格(真空和假空)个数。
countif(区域,”“):求区域内非空单元格个数。
countif(区域,”*”):求区域内文本单元格个数。
b. countblank(区域) :求区域内所有空单元格(真空和假空)个数。
c. counta(区域) :求区域内非真空单元格(真空和假空)个数。
d. count (区域) :求区域内数字型单元格(真空和假空)个数(自动忽略错误、文本,但是包含日期型)。
e. countifs (区域1,条件1,区域2,条件2,…) :多条件统计,类似sumifs。
4.数据取舍
a. round(数据,要保留的小数位数):根据要求保留小数位数。
b. roundup(数据,要保留的小数位数):根据要求进一法保留小数位数。
c. rounddown(数据,要保留的小数位数):根据要求退一法保留小数位数。
d. fixed(数据,要保留小数位数,true不留逗号/false留逗号):默认留2位。返回文本。
e. trunc(数据):不考虑数据的正负,直接舍掉小数位数。
f. int(数据):保留小于或等于数据的最大整数。
5. sumproduct:用于求几组数据乘积之和。
a. 只设置一个参数时,等同于sum。
b. 设置多个参数时,为多组数据(可横可竖)的乘积之和。sumproduct(a1:a9,b1:b9), eg.
c. 多条件求和:
sumproduct((条件1区域=条件1)+0, (条件1区域=条件1)+0,…,求和区),实际使用时,该函数对参数的位置无要求。参数换位不影响结果。
sumproduct((条件1区域=条件1)*(条件1区域=条件1),…,求和区)。
sumproduct((条件1区域=条件1)* (条件1区域=条件1)*求和区)。
d. 多条件计数:sumproduct((条件1)* (条件2)*…)。如:sumproduct((a1:a9>60)* (b1:b9=”女”)*…)。
e. 关于排序的思路:除了rank函数外,sumproduct也可以实现:sumproduct(($a$1: $a$9>a1)+0)+1,多条件排序参考上述多条件求和的思路。
6. frequency(数据源,分断点) :分区间统计函数,统计大于前一个段点,且小于等于当前段点的数值个数。
*如果我们想要大于等于前一个段点,小于当前段点,亦或是其他的一些需求,可以通过段点的设置来解决这个问题,比如段点设置为59.99而非60。
*该函数会自动忽略非数值的数据。
*该函数比较特殊,输入步骤为:选中结果显示单元格(比分断点多1个单元格)—输入公式—按ctrl+shift+enter组合键确认输入。
*结果按照分断点从小到大显示,分断点的顺序、乃至分布都不影响结果的显示。
*分断点的重复,则视为大于某数,又同时小于等于某数,显然不存在,重复的话后一个数字结果显示为0。
*对分断点重复引申:由于重复分断点的只有第一个会显示数字,其余皆显示为0,那么将数据源作为分断点的话,便可以将数据源中重复数字部分归零。所以得到一个统计不重复项个数的方法:sumproduct(--frequency(数据源,数据源)>0)
frequency(数据源,数据源)是将数据源转化为重复次数和0的数组;
frequency>0,是将数据转为true和false的数组;
-- frequency>0,是将true和false的数组,变为1和0的数组;最后用sumproduct统计。
*对于上述问题的再引申:由于frequency只能对于数据统计,那么如果数据源中存在文本,则失效了。处理思路为将文本转化为数据,可以使用match函数:
sumproduct(--frequency(match(数据源,数据源,0), match(数据源,数据源,0))>0)
match(数据源,数据源,0)用以查找出现的第一个位置,从而形成新的纯数据数据源。
*将函数结果横向显示:transpose(frequency( ))
*求单独某区间的个数:index(frequency(数据源,{60,80}),n)。该处,由分断点{60,80},将区间分为三段:(-∞,60],(60,80],(80,+∞),并得到三个统计数值,由index取第n 个数值并返回。
7. 去极值后再求平均值trimmean(数据区域,去除的极值个数/count(数据区域))
8. subtotal(功能参数,数据区域1, 数据区域2…)函数一般用于存在筛选、隐藏的情况下的多功能处理。
a. 关于生成不间断序号的思路:subtotal(103,b$2:b2)*1。
*1是因为只是用subtotal时候,excel会将最后一行当初汇总行,那么其在进行筛选操作时候,会一直保留最后一行记录,这将导致我们的筛选操作出现问题,使用*1将其失去上述效果以保证筛选的正常运行。当然+0,-0等也是可以的。
044-字符处理
1. concatenate(字符1,字符2,…):合并字符串。
2. 字符串1&字符串2&…:同上concatenate函数。
3. phonetic(区域):phonetic是连接文本型的函数,且只识别文本型,对于其他型、公式、逻辑值、错误值都不识别。
4. len( )和lenb( )函数
len(文本):计算文本字符数,如”今天”为2个字符,”abc”为3个字符。
lenb(文本):计算文本字节数,如”今天”为8个字符,”abc”为3个字符。
5. exact(字符串1,字符串2):严格比较两个字符串。
6. find(被查找的字符,字符串):只返回第一个找到的字符所在字数。
7. find(被查找的字符,字符串,从第几个字符开始查找):从第n个字符开始往后查找字符。
8. search(被查找的字符,字符串,从第几个字符开始查找)
*find和search的区别:find查找时区分大小写,而search不区分。此外,模糊查找上,find不可以使用?、*通配符,而serch可以使用。
*如果想要查找通配符所在位置,可以使用~*来表示,如search(“~*”,字符串)。
9. findb和searchb函数:用法与find和search相同,用于寻找字节所在位置。
10. 截取函数left、right、mid。
a. left(字符串,截取字符位数)。
b. right(字符串,截取字符位数)。
c. mid(字符串,截取字符起始位置,截取字符位数)。
d. leftb、rightb、midb同上三个函数,但是用于字节。
11. 关于上述函数的几个应用思路:
a.如果汉字在前,字母在后的结构字符串,汉英分离:
汉字字符串:left(a1,lenb(a1)-len(a1));leftb(a1,searchb(“”,a1)-1)。
英文字符串:right(a1,2*len(a1)-lenb(a1));midb(a1,searchb(“”,a1),100)。
b. 截取指定字符前/后的字符串:
截取指定字符前的字符串:left(a1,find(“指定字符”,a1)-1)。
截取指定字符后的字符串:right(a1,len(a1)-find(“指定字符”,a1))。
神の解决方案:trim(right(substitute(a1, “指定字符”,rept(“ “,99)),99))。
trim:清楚文本中所有的空格,但会保留单词之间的单个空格。
substitute:用第三个参数,替换第二个参数。
rept:将第一个参数重复第二个参数次,形成新的字符串。
12. substitute(替换前文本,被替换字符,替换字符):替换函数。
substitute(替换前文本,被替换字符,替换字符,n):替换第n位的被替换字符。
13. replace(替换前文本,指定替换位置,被替换字符长度,替换字符)
*substitute和replace的区别,一个是查找字符替换,一个是指定位置替换。返回都是文本格式。
14. replaceb:使用同replace,但是是按照字节进行替换。
15. 神一样的text——text(需转换外观样式的数据,指定转换的格式);
a. 分辨正、负、0、文本:
4区段:text(a1,”正数,负数,零,文本”)
3区段:text(a1,”正数,负数,零”):对文本直接显示文本内容。
2区段:text(a1,”非负数,负数”):对文本直接显示文本内容。
1区段:text(a1,”数字”):对文本直接显示文本内容。
b. 自定义格式代码
4区段:text(a1,”[条件1]格式1;[条件2]格式2;不满足1、2的格式3;文本”)
3区段:text(a1,”[条件1]格式1;[条件2]格式2;不满足1、2的格式3”)
2区段:text(a1,”[条件1]格式1;不满足1的格式2”)
1区段:text(a1,”[条件1]格式1”):非1返回原值。
c. 格式代码
常用占位符:0,?,#;
0占位符:text(a1,”0.00”), text(a1,” 000”), eg. 不足处补0;
?占位符:不足处补空格,其他类似0占位符;text(a1,”.”), eg.
#占位符:去掉文本中无意义的0,text(a1,”####.####”), eg.
数字千分位分隔符:格式文本中添加逗号。text(a1,”#,#”), eg.
如果希望占位符为普通符号,应在占位符前加!或\,如text(a1,”\#0!#”)。
关于日期、时间占位符:
d. 关于text(20161214,”0年00月00日”)=2016年12月14日的分析:
该函数并非分析出20161214为日期,然后按照年月日显示,而是对于占位符的运行是从后往前的,亦即先将20141214的后两位插入0年00月00日的后面00日中,后将12插入00月,4插入0年,剩余的201保留在最前端,从而生成2016年12月14日。
e. 将小数表示为分数:text(a1,”#又#/#”); text(a1,”#又#/10”)。
f. 小写整数数字转为中文大写样式:text(a1,”[dbnum2]g/通用格式”)&”元整”; text(a1,”[dbnum2]g/通用格式元整”);——dbnum1一二三;dbnum2壹贰叁;
g. 关于[dbnum2]和时间格式的搭配使用。p201。
h. 数值转化为文本:text(a1,”@”)。
文本转化为数值:value(a1)。
请使用手机扫一扫x
该用户其它信息

推荐信息

长沙分类信息网-长沙新闻网
关于本站