excel函数基础。
数据类型及排序规则。
excel数据一般可以分为文本,数值,日期,逻辑,错误等几种类型,其中日期是数字的一个特殊样式。此外,数字和数值是两个不同的概念,数字可以以文本的形式出现,也可以是数值,日期等,一般在未明确指定的情况下,数字指的是数值型的数字,在excel函数帮助文件中,经常会看到关于升序的描述为"数值必须按升序排列:..2,-1,0,1,2,..
a-z,false,true",这时excel的一个规则,即数值小于文本,文本小于逻辑值,错误值不参与排序。
逻辑值与数值的关系(if((条件1)*(条件2),true,false)或者if(and(条件1,条件2),true,false))
在excel中,逻辑值只有true和false两个,它们与数值的关系为:
1)在四则运算中,true=1,false=0
2)在逻辑判断中,0=false,所有的非0 数值=true
3)在比较运算中,数值《文本 这三条准则非常重要,在excel函数公式的简化及计算中用途很广。
数据类型转换。
以文本形式储存的数字,比如a在a1中输入“123”或者将a1的单元格格式设置为文本后输入“123”,则该数字不能直接作为数值参与函数计算。这时,公式"=a1=123",将返回false,公式"=sum(a1:a2)"将无法得到正确的计算结果。
通常用以下6种方法可将a1中以文本形式储存的数字转换为数值型:
a1*1=a1/1 =a1+1 =a1-1 =-a1 =value(a1)
混淆文本型数字与数值型数字是许多人常范而有不易察觉的错误。通过left,mid,text等文本函数计算得到的结果都是文本型,如果未进行转换而代入下一步与之不匹配的计算将得不到正确的结果。
关于空和空文本。
在函数公式应用中,常会用类似下面的公式来屏蔽不希望出现的计算结果:
=if(a1=""a1*b1)这个公式表示"若a1单元格为空,则显示为空,否则返回a1与b1的乘积"。空"就是选中单元格在编辑栏什么也没有,是"真空";"空文本"即一对英文引号"",表示文本里什么也没有,是一个空的字符串,其字符长度为0,一般由公式返回,是"假空"。无论a1为真空还是假空,公式“=a1=""都返回true。
单只有当a1为真空时,=isblank(a1)才会返回true。当a1为真空时,公式“=a1”返回0;当a1为假空时,公式“=a1”返回的是"空文本"
带引号的文本:函数公式中含文本时,用半角双引号括住文本,如"你好"(不带引号)表示为“"你好"”。若要表示文本“"你好"”时,则必须将该文本的双引号改为2层双引号。
比如,用find函数在a1单元格查找带引号的文本"你好"。=find(""你好"""a1)最外一层双引号表示括住的是文本,里面2层双引号(涂红色部分)表示该文本原来有一对双引号。得到的结果都是文本型,如果未进行转换而代入下一步与之不匹配的计算将得不到正确的结果。
有些函数的参数可以用简化或者省略以达到缩短公式的目的,但怎样才算合理、正确的简化呢?希望各位会员朋友在此写一写吧。
我开个头:true、false用代替。
vlookup(lookup_value,table_array,col_index_num,range_lookup)(或者hlookup)的最后一个参数,若省略或为true则大致匹配。
所以我们会用=vlookup(a1,b:c,2,0)类似的东西来精确查找引用。
用vlookup(a1,b:c,2)——省略第四个参数是大致匹配,而vlookup(a1,b:c,2,)—省略第四个参数但没省略之前的逗号却还是精确匹配的!!!
match最后参数也是如此,可以省略0或false,但不要省略前面的那个逗号就是精确匹配了。
注意】帮助文件说false是大致匹配是错误的——应该是精确匹配。
有些函数的参数可以用简化或者省略以达到缩短公式的目的,但怎样才算合理、正确的简化呢?希望各位会员朋友在此写一写吧。
我开个头:true、false用代替。
vlookup(lookup_value,table_array,col_index_num,range_lookup)(或者hlookup)的最后一个参数,若省略或为true则大致匹配。
所以我们会用=vlookup(a1,b:c,2,0)类似的东西来精确查找引用。
用vlookup(a1,b:c,2)——省略第四个参数是大致匹配,而vlookup(a1,b:c,2,)—省略第四个参数但没省略之前的逗号却还是精确匹配的!!!
match最后参数也是如此,可以省略0或false,但不要省略前面的那个逗号就是精确匹配了。
注意】帮助文件说false是大致匹配是错误的——应该是精确匹配。
excel函数与公式实战技巧精粹》已明确“省略”和“简写”概念,详见第15楼。
一、概念分析。
1、示例:关于“省略”一词,excel自身帮助文件的说法是比较含糊的,有时候是“省略”有时候是“忽略”,但针对上面表中两列共6个公式,大家可以比较一下,显然:左边3个公式是相互等价的,右边3个公式也是相互等价的。
问题】如果不分青红皂白都说第4参数“省略”了,很显然就不能区分精确匹配和大致匹配。
创新】在编著《excel函数与公式实战技巧精粹》一书过程中,经过反复推敲,最后明确了“省略”与“简写”两个概念:
公式3这种整个参数都去掉的情况,称为vlookup第4参数省略。
公式6这种保留参数前面的逗号的情况,称为vlookup第4参数简写。
match函数也是如此,当然,对此概念并非所有人都接受,正如对于“数组公式”的概念争议一样,最终约定俗成使用统一的概念,才能方便学习。
论证过程。1)被省略的一个关键词:
前段时间看到英文版的帮助文件,并与中文版进行部分对比时,发现英文版帮助文件在描述“省略”或者“简写”时,都使用omitted(省略了的)一词,也难怪中文版的“省略”引起理解的歧义,不过英文版的参数描述中第一个词却是required.(必需的) optional.(可选的)比如if函数的帮助文件中关于参数的描述:
logical_testrequired. …
value_if_truerequired. …
value_if_falseoptional.……
中文版帮助信息没有这个词。
2)vba中的函数与工作表函数区别。
1)vba帮助中关于参数描述,会标明必选(或必要)、可选。
比如:datediff(interval, date1, date2[, firstdayofweek[, firstweekofyear]])datediff 函数语法中有下列命名参数:
2)vba中的函数可选参数,是可以跳过,而工作表函数的参数则是“一个萝卜一个坑”,不可跳过。
比如,运行下面这个程序:
2. sub test()
range("b1") datediff("ww", 2009-1-1", now, ,2)
end sub
普通浏览复制**保存**打印**。
1. subtest()
range("b1")=datediff("ww","2009-1-1",now,,2)
endsub与
2. sub test()
range("b1") datediff("ww", 2009-1-1", now, 2)
end sub
普通浏览复制**保存**打印**。
1. subtest()
range("b1")=datediff("ww","2009-1-1",now,2)
endsub
的效果都是一样的,也就是说datediff函数参数变成了datediff(interval, date1, date2, firstweekofyear) ,直接跳过firstdayofweek。
但是工作表函数if(logical_test,value_if_true,value_if_false),却不可能变为if(logical_test,value_if_false)
结论】综上所述,个人认为:
1、工作表函数参数如果为“可选”参数,则从最后一个参数起,可以依次省略(即整个参数位置全部去掉),比如:
offset(reference,rows,cols,height,width)
可以用offset(reference,rows,cols,height)——省略了width参数。
或者用offset(reference,rows,cols)——省略了height和width参数。
2、而函数的部分参数(不一定需要“可选”参数),可以使用逗号保留参数位置,这种用法为“简写”,比如:
可以用offset(reference,rows,cols,,width)——简写了height参数。
或者用offset(reference,,cols)——简写了rows参数,并省略了height和width参数。
weekday(serial_number,return_type)
1 或省略数字 1(星期日)到数字 7(星期六)。
2 数字 1(星期一)到数字 7(星期日)。
3 数字 0(星期一)到数字 6(星期日)。
excel所有excel函数
用途 返回一组数据与其平均值的绝对偏差的平均值,该函数可以评测数据 例如学生的某科考试成绩 的离散度。语法 edev number1,number2,参数 number1 number2 是用来计算绝对偏差平均值的一组参数,其个数可以在1 30个之间。实例 如果a1 79 a2 62 a3 45 a...
EXCEL函数教程 EXCEL日期函数和时间函数大全
显示当前年份函数 year now 显示当前月份函数 month now 显示当前日期函数 day now 显示当前星期函数 text now aaaa 显示当前准确时间 text now hh mm ss 显示当前年月日 today 显示当前年月日和时间 now 使用方法 直接在某单元格输入以上函...
excel函数
一 求字符串中某字符出现的次数 例 求a1单元格中字符 a 出现的次数 len a1 len substitute a1,a 二 如何在不同工作薄之间复制宏 1 打开含有宏的工作薄,点 工具 宏 m 选中你的宏,点 编辑 这样就调出了vb编辑器界面。2 点 文件 导出文件 在 文件名 框中输入一个文...