更多系列文章,戳文末阅读原文进入:我的微博V+会员函数专栏哦~

写在前面:

概念是用来了解的,不是用来恐惧的。一时无法理解,大可不求甚解,无需刻意强求,往后学习函数的时间里,通过实例人的潜意识会反复思考,只要学习的过程持续不断,概念性的东西自然而然也就理解了——你的朋友,看见星光。

1,函数的结构

我们上一章说函数是Excel内部预先定义的、能够按照特定顺序和结构来执行运算任务的功能模块。

这句话怎么理解呢?

由于函数是Excel内部预先定义好的,我们能够使用它,但正常情况下不能修改它,不正常情况是指直接修改Excel的源代码,很明显,这不是一般人能干的事儿。

每一个函数都拥有自己的结构,通常是由表示公式开始的等号、函数名称、左括号、以半角逗号相间隔的参数以及右括号组成。

我们上面提到了个词,叫参数。

参数是函数最重要的组成部分,分为可选参数和必需参数。

在函数语法中,可选参数一般使用一对中括号"[]"包括起来。

比如耳熟能详的SUM函数,它的语法如下。

如官方文件所说,SUM函数最多可以支持255个参数,第一个参数是必须的,其余的244个都是可选的,可以根据实际情况选择是否省略。

举个例子。

在Excel中输入公式:

=SUM()

此时我们没有提供任何参数,直接回车,系统会弹出如下所示的消息提示框,啰哩啰唆一大堆,但意思无非就是你一定得给SUM一个参数,不然它就和你过不去。

那么是不是每个函数都必须有参数呢?

只能说大部分如此,极个别例外。比如公式=TODAY(),它并不需要参数,默认返回当前的日期。

作为函数最重要的组成部分,参数可以由数值、日期、文本、逻辑值等元素构成,也可以使用引用、其它函数、数组等。

比如公式=IF(A1>80,"优秀",IF(A1>60,"不及格","不及格"))

第二个IF函数是第一个IF函数的嵌套函数。

但是,别动!什么是引用?什么是数组?什么是逻辑值、文本值、错误值?我听不懂,你前面也没讲过啊?

好吧,那我们就来讲一下。

……

2,函数中的数据类型

如果说函数是设置好的功能模块,那它就好比种类不同的厨具,有的是微波炉,有的是高压锅,炒锅,热水壶,擦布……

而数据便好比不同的食材,拥有不同的类型,有的是水,有的是青菜,大米,牛肉……

不同的食材当然有不同的烹饪方法,我们不能把大米放到擦布上去煮熟,也不能把青菜放到热水壶里去烹饪……

所以,了解数据类型对于函数学习来说就是非常必要的事。

在函数公式中,按照不同的标准数据可以被划分为不同的类型。

这就好比食材既可以按照产地可以分为山东的、河北的、胡建的,也可以按照其他标准划分为海鲜和非海鲜,生的、熟的,有机的……

1)按照来源,数据可以分为引用和非引用。

引用通常是指单元格引用。比如公式:=SUM(A1:A8,20)。A1:A8是引用,20则不是。

2)按照函数运算过程中是否发生变化,可以分为变量和常量。

常量就是不会变的数据,变量与之相反。

同样以公式=SUM(A1:A8,20)为例,20是常量,无论公式如何运算,它都不会改变。A1:A8是变量,它会根据A1:A8单元格内数据的改变而改变。

3)按照数据类型,又可以划分为数值、日期、文本、逻辑值和错误值等。

这个是重点,我们需要点杯奶茶好好聊一聊。

Ⅰ 数值

数值是指代表数量的数字形式,比如学生的成绩,个人的身高体重,数值可以是正数,负数、也可以是小数和百分比。

但需要说明的是,在现实中,数字的大小可以无穷无尽,但在Excel中,由于软件自身的限制,能够保存的数字最大只能精确到15位有效数字。

超过15位会怎么样?

Excel会自动将15位以后的整数变为零。比如123 456 789 123 456 789(18位),Excel会显示为123 456789 123 456 000。

此外,如果大于15位的有效数字是小数,Excel会毫不犹豫的直接舍弃,Excel可是拥有上百亿单元房产的土豪,怎么可能在意那几毛钱。

可能有小伙伴就说了,你胡说,那我表格里的18位身份证是怎么回事?它后三位没变成0啊!!

这是因为身份证是以文本形式保存的,他只是看起来是数值,但其实良心大大的坏了,是个文本的家伙。

Ⅱ 日期和时间

在Excel中,日期和时间是以一种特殊的数值形式储存的,这种数值形式又被称为“序列值”。

在MS操作系统所有的Excel版本中,日期系统默认为“1900年日期系统”。也就是以1900年1月1日作为序列值的基准日,这一天的序列值记为1,此后的日期以此递增。比如1900年1月15日的序列值是15,2019年6月20日的序列值为43636。

在Excel中,最小的日期是1900年1月1日,序列值为1。最大日期是9999年12月31日,序列值是2 958465。

由于日期是以数值的形式储存的,所以它可以直接参与加减乘除的数值运算,这意味着着什么呢?

如果我们要计算两个日期之间相差的天数,直接相减就可以了:

但和数值不同的是,当日期以常量的形式出现在公式中时,必须使用半角双引号包裹起来。

比如我们要计算2019年6月20日的100天以后是什么日期,可以使用公式:

="2019-6-20"+100

说完了日期,再说下时间。

对于日期来说,1天的数值单位就是1,那么1小时就可以表述为1/24,同理,1分钟可以表述为1/24/60。

也就是说,一天中的每一个时刻都可以由小数形式的序列值来表示。比如,中午12点也就是0.5(1天的一半1/2)。

同日期一样,时间也可以直接参与加减乘除的数值运算。当时间以常量的形式出现在公式中时,同样必须使用半角双引号包裹起来。

例如一个人凌晨6点28分开始加班,早晨9点56分下班,他加班的时长是多少呢?

公式:

="9:56"-"6:28"

结果是3小时28分。

Ⅲ 文本

文本又称字符串,是指包含非数值字符的数据。比如学生的名字、考试科目等。除此以外,也包含以文本形式保存的数值,例如身份证号码等。

当文本出现在公式中时,必须使用半角双引号包括起来。比如计算  麻烦他妈骂麻烦他爸真是麻烦死了   有几个字符?

公式如下:

=LEN("麻烦他妈骂麻烦他爸真是麻烦死了")

结果为15

非数值型的文本,不能参与数学运算,否则返回错误值。

数值型的文本可以参与数学运算,但会被转换为真正的数值。

Ⅳ 逻辑值

逻辑值只有两个。一个FALSE,另外一个是TRUE。FALSE为假,TRUE为真。

逻辑值可以直接参与数学运算,此时TRUE等同于1,FALSE等同于0。

例如公式=TRUE+1,等同于公式=1+1,结果为2。公式=FALSE+1,等同于公式=0+1,结果为1。

关于逻辑值,我们等讲到逻辑函数IF时再细聊。

Ⅴ 错误值

错误值有多种形式,常见的有#VALUE!、#N/A等。不同的错误值具有不同的含义,但这对新人来说这暂时不重要,同样留到以后再说吧。

这4种数据类型(日期可以视为数值)如果打起架来,谁大谁小呢?

数值

爱无敌,天上地下唯TRUE最大。

错误值呢?错误值去哪了?让它也来打架啊!

别激动,错误值是个错误,不能参与排序,否则大家都会成为错误。

比如=#N/A

……

深吸一口气,最后一个问题,什么是数组呢?

数组是由一到多个元素构成的有序集合,元素可以是数值、文本、逻辑值甚至是错误值。

数组是Excel函数进阶后的一个知识点,我们这儿暂时只了解一下必须知道的部分,比如常量数组。

常量数组顾名思义是由常量构成的数组,并使用大括号{}在首尾进行标识。例如:

{1,"excel",2,"学习"}

需要注意的是,常量数组只能由常量组成。比如={sum(a:a),1},常量数组中放置了函数,是不允许的。

数组如果按照维度划分,又可以分为一维数组、二维数组和三维数组。

一维就是单行或单列的数组。

单行数组元素之间使用半角分号间隔,例如={"a","b","c","d"}

单列数组元素之间使用半角逗号间隔,例如={1;2;3;4;5}

我去,一会逗号,一会分号的,怎么区分呢?

分号是不是有两层?上面一个点,下面一个逗号,所以它代表行(单列数组是有多行组成的)。而逗号没有分层的模样,所以它代表列。

二维数组就是由行列两个方向构成的数组,例如

={1,"a";2,"b";3,"c"}

这是一个两列三行的二维数组。一共有两个分号,所以是三行(最后一行不用标注分号),每行有一个逗号,所以是两列。

三维数组就是由不同工作表的单元格或区域构成的数组。通常而言,函数数组最高只有三维。

……

3,函数的分类

聊完了函数中的数据类型,最后我们再来简单聊下函数的分类。

按照不同来源,Excel函数可以分为内置函数(系统自带的)、自定义函数(VBA编写的)以及宏表函数(古老的Excel 4.0的函数,需要通过定义名称才能使用)

内置函数是我们日常工作和学习中最为常用的,也是我们学习的重点。按照不同的功能,内置函数可以分为文本函数、逻辑函数、查找与引用函数、日期与时间函数、统计函数等。大都人如其名,从名字就可以看出其作用了。

两杯奶茶喝完了,今天就这样吧。

挥手致安,下期再见。

……

……

       

excel中match函数_Excel函数轻松学02:详解Excel函数中的数据类型相关推荐

  1. python列转行函数_Python pandas 列转行操作详解(类似hive中explode方法)

    最近在工作上用到Python的pandas库来处理excel文件,遇到列转行的问题.找了一番资料后成功了,记录一下. 1. 如果需要爆炸的只有一列: df=pd.DataFrame({'A':[1,2 ...

  2. kali中steghide命令工具教程;7z命令详解;kali中base64命令详解

    目录 kali中steghide命令工具教程 7z命令详解 kali中base64命令详解 例:解码文本里的base64编码 kali中steghide命令工具教程 根据此博客学习(12条消息) 隐写 ...

  3. python函数定义中参数列表里的参数是_详解Python函数中参数带星号是什么意思

    函数的参数使用除了常规的位置参数和关键字参数外,还支持可变个数的函数参数,这种支持可变个数的参数方法称为参数收集,对应的参数称为收集参数. 一.参数收集的定义 Python的函数支持可变不定数量的参数 ...

  4. ASP中利用OWC控件实现图表功能详解[zz]

    ASP中利用OWC控件实现图表功能详解 在ASP中利用OWC(Office Web Components)控件可轻松实现各种图表功能,如饼图,簇状柱型图,折线图等. 在下面的代码中我详细的给出了饼图, ...

  5. java中属性文件读取案例_java相关:Spring中属性文件properties的读取与使用详解

    java相关:Spring中属性文件properties的读取与使用详解 发布于 2020-6-3| 复制链接 摘记: Spring中属性文件properties的读取与使用详解实际项目中,通常将一些 ...

  6. c语言 字符串 strncpy,详解c语言中的 strcpy和strncpy字符串函数使用

    详解c语言中的 strcpy和strncpy字符串函数使用 strcpy 和strcnpy函数--字符串复制函数. 1.strcpy函数 函数原型:char *strcpy(char *dst,cha ...

  7. python函数中可变参数的传递方式是_详解Python函数可变参数定义及其参数传递方式...

    Python函数可变参数定义及其参数传递方式详解 python中 函数不定参数的定义形式如下 1. func(*args) 传入的参数为以元组形式存在args中,如: def func(*args): ...

  8. 详解 js 函数中的 arguments

    详解 js 函数中的 arguments 1.什么 arguments 简单来说:arguments 是一个对应于传递给函数的参数的类数组对象 arguments 对象是所有(非箭头)函数中都可用的局 ...

  9. python中可变参数*args传入函数时的存储方式为_python 中文读法详解Python函数可变参数定义及其参数传递方式...

    Python函数可变参数定义及其参数传递方式详解 python中 函数不定参数的定义形式如下 1. func(*args) 传入的参数为以元组形式存在args中,如: def func(*args): ...

  10. c语言remove命令和erase,详解C++ list中erase与remove函数的使用

    C语言中的erase与remove函数一直让小编很迷糊,因为他们的功能都是一样的,本文是详解C++ list中erase与remove函数的使用方法,接下来爱站技术频道小编带你一起来了解吧! eras ...

最新文章

  1. Keil调试局部变量显示not in scope的问题解决
  2. Oracle优化03-Latch和等待
  3. vivo的android是什么手机图片,vivo iQOO配置好不好 vivo iQOO手机参数和外观图赏
  4. 16岁成为全栈开发者:我从开发游戏到写加密货币投资机器人的心路历程
  5. Lucene知识小总结4:索引的反删除
  6. Android获取设备已安装的应用
  7. html打开显示脚本错误,IE浏览器显示脚本错误怎么解决?IE浏览器脚本错误解决方法图文教程介绍...
  8. 山东到底有没有互联网?
  9. 打印机(Brother MFC-7860DN)一直提示更换墨盒
  10. 项目功能介绍 非常有用
  11. 有关Spring中Resource的继承关系(代码解读)
  12. composition API重构mixin实践
  13. RH358配置电子邮件传输--配置仅发送电子邮件服务
  14. js pug 代码_Pug模板(一)
  15. 高频leetcode数学部分:679. 24 点游戏
  16. 一个基于场景感应的android智能手机防丢失系
  17. 如若,我是这样的女子
  18. 1分钟轻松爬数据(web scraper插件使用教程)
  19. Win10.VS2017.Cmake.配置protobuf
  20. 输出直角三角形图案-c++

热门文章

  1. CSS深入理解学习笔记之z-index
  2. 大对象简介+大对象的4种类型+lob类型的优点+lob的组成
  3. OPMS项目管理系--新增加项目报表统计
  4. 四屏带缩略图JS幻灯片
  5. PCA与LDA算法的解释,浅显易懂
  6. 金御® GM-AFM介绍
  7. Colaboratory下载Kaggle数据
  8. python功能分享_Python中非常实用的一些功能和函数分享
  9. 【Android】使用Assets目录中的图片资源
  10. 真香!原来 CLI 开发可以这么简单