为了方便大家理解,本文并未使用 ABNF语法范式 来描述语法,这样做虽然损失了语法描述的精确性,但能让大家一目了然;
目录
一、单元格
二、区域
三、单元格或区域的引用类型
四、跨工作表的单元格的引用
五、跨工作薄的单元格的引用
六、公式
1. 数学运算符
2. 运算符的优先级
七、函数
八、数组
内容
一、单元格
单元格是工作表中的单个元素,可容纳数值、文本或公式。单元格是通过其地址进行识别的,其地址由列号和行号组成。
例如:地址为D9
的单元格位于第4列(D列)的第9行;
单元格地址的语法:
单元格地址 = 列号行号
二、区域
一组单元格称为一个区域,可以通过指定基左上角和右下角单元格的地址(用冒号分隔)来指定区域;
区域地址的语法:
区域地址 = 左上角单元格地址:右下角单元格地址
说明:
- 整列的区域也可以表示为
列号:列号
- 整行的区域也可以表示为
行号:行号
示例:
C24 由一个单元格组成的区域;
A1:B1 颁在一行和两列中的两个单元格;
A1:A100 A列中的100个单元格;
A1:D4 16个单元格(4行4列)
C1:C1048576 整列的单元格,也可以表示为 C:C
A6:XFD6 整行的单元格,也可以表示为 6:6
A1:XFD1048576 工作表中的所有单元格,也可以表示为 A:XFD 或 1:1048576
三、单元格或区域的引用类型
可以在公式中通过引用单元格或区域来使用单元格或区域中的数据;
对单元格或区域的引用方式有以下几种:
- 相对引用: 相对引用保存的是被引用的单元格相对于引用所在的单元格的偏移量;所以,当把相对引用复制到其他单元格中时,被引用的单元格也会随着改变;默认情况下,Excel会在公式中创建相对单元格引用;
- 绝对引用: 绝对引用保存的是被引用的单元格的真实地址;所以,当把绝对引用复制到其他单元格中时,被引用的单元格不会随着改变;绝对引用的语法格式为:
$列号$行号
; - 混合引用: 混合引用是指在对单元格地址中的列号和行号使用不同的引用类型;如:列号用相对引用表示,行号用绝对引用表示
列号$行号
,或者 列号用绝对引用表示,行号用相对引用表示$列号行号
;
只有在打算将公式复制到其他单元格时,才有必要关注单元格的引用类型;
四、跨工作表的单元格的引用
要引用同一工作簿中的不同工作表中的单元格,可以使用如下格式:
工作簿内引用 = 工作表名称!单元格地址
注意:
如果引用中的工作表名称含有一个或多个空格,则必须用单引号将它们括起来,语法格式如下:
工作簿内引用 = '工作表名称'!单元格地址
五、跨工作薄的单元格的引用
要引用已被打开的其他工作簿中的单元格,可以使用下面的格式:
工作簿外引用 = [工作簿文件名]工作表名称!单元格地址
如果被引用的工作簿是没有被打开的,则必须在引用中加上完整的路径以便使Excel能打到它:
工作簿外引用 = path\[工作簿文件名]工作表名称!单元格地址
被链接的工作簿也可以不在同一台电脑中;
注意:
如果引用中的路径、工作簿文件名、或者 工作表名称 中含有一个或多个空格,则必须用单引号将感叹号!
之前的东西都括起来,语法格式如下:
工作簿外引用 = `path\[工作簿文件名]工作表名称`!单元格地址
六、公式
公式由在单元格中输入的特殊代码组成。它可以执行某个类型的计算,然后返回结果,并且将结果显示在单元格中。公式使用各种运算符和工作表函数来处理数值和文本。在公式中使用的数值和文本可以位于其他单元格中,这样就可以轻松地更改数据,并且为工作表赋予动态特性。
例如:通过更改工作中的数据,并让公式完成相关工作,就可以快速地获取结果。
在单元格中输入公式之后,单元格将会显示公式计算的结果,但是当选择单元格时,公式自身会出现在公式栏中;
公式的语法:
=表达式
说明:
- 公式以等号
=
开头; - 表达式由下列一些元素组成:
- 数学运算符;如
+
(用于相加) 和*
(用于相乘); - 单元格引用(包括命令单元格 和 区域)
- 数值 或 文本
- 工作表函数;如
SUM
或AVERAGE
;
- 数学运算符;如
1. 数学运算符
运算符是一种符号,用于指明需要公式执行的数学运算类型。
Excel可以识别的各种运算符如下:
2. 运算符的优先级
运算符的优先级决定公式中各个运算符的运算顺序;
各个运算的优先如下表:
七、函数
函数的使用语法:
函数的使用 = 函数名(参数1,参数2,参数N)
说明:
- 参数以英文逗号
,
分隔; - 括号是必须的,即使没有参数,也要有括号
()
;
八、数组
我认为Excel中的数组就是区域数据的数值表示;可以是一维的,也可以是二维的;一维数组的方向即可以是水平的(对应于一行),也可以是纵向的(对应于一列);
语法格式:
数组 = {元素a1,元素a2,元素a3;元素b1,元素b2,元素b3;元素c1,元素c2,元素c3;}
说明:
- 同一行内的元素之间用 逗号
,
分隔; - 行与行之间用 分号
;
分隔;
1. 赋值
可以把数组赋值给相应结构的区域,操作步骤如下:
- 选择用于存放数组的区域;
- 通过公式输入数组:
=数组
; - 按组合键
Ctrl+Shift+Enter
完成输入该公式;
Excel自动会在该区域的单元格中显示数组中相应的元素的值;
说明:
- 输入公式后,按
Enter
键 可以完成一个公式的输入,输入的实际内容是=公式表达式
; - 输入公式后,按
Ctrl+Shift+Enter
键 可以完成一个数组公式的输入,输入的实际内容是:{=公式表达式}
;
与使用多个单独的公式相比,数组公式有以下特点:
优点:
- 可以保证区域中的所有公式完全相同;
- 使用多单元格数组公式可以减少意外覆盖公式的可能。不能更改或者删除多单元格数组公式中的单元格,如果尝试执行这样的操作,Excel会显示错误信息;
- 使用多单元格数组公式可以防止篡改公式;
缺点:
- 不允许在区域中插入新行。但在某些情况下,不允许插入新行是一个很有用的功能;
- 如果向区域的底部添加新数据,则必须对数组公式进行修改以容纳新数据;