是excel前身的数据处理软件
勾选 ,其作用就是让算式直接运算,会自动在表达式前面加**** (等号)
新建窗口后可以在同级下选择,就可以用两个窗口对比
:可以把分开的视图的布样式保存
在2010后,excel支持分屏,就取消了这个功能
选择后进行插入,就可以插入对应数量的工作表
同时也可以一并运行其他操作(删除)
可以让字段名或关键行列保持不动,便于对应茶看
-
复制填充 : 按住****
-
特殊格式填充 :
-
定义填充格式 :
可以用整张表刷整张表
如果格式刷,可以多次刷格式,ESC键退出
- 输入今天的日期 (YYYY/MM/DD)
- 单元格内换行,通过这个来做斜线单元格
- 将选中的单元格用第一个输入的值填充
单元格格式并不会改变单元格本身的值,包括更改数据类型
日期也是数字,表示的是离**的天数**
复制粘贴到陌生单元格,可能就会变成数值,只要更改相应单元格格式即可
时间也是数字,表示的是离**的天数的数位数**
如:
可以在默认格式后面加上自己需要的文字,单元格隐藏
特殊自定义
- ,三个冒号代表隐藏单元格
- 日期格式自定义(ymd)
- 表示英文缩写
- 表示英文全称
- 星期表示
- 表示星期几
- 表示星期全称
- 一般在这前面加 就可以表示为****
- 数字表示
- 表示一位数字
文本格式不会改变
正来说Excel超过15位就自动用科学计数法表示,但文本不会被改变
并且文本格式的数据不能直接改变他的类型,并且靠左对齐
-
如果是纯数字的文本,可以在单元格左边的****中选择
-
特殊用法
- 如果有很多单元格要转化为数字,有一些是纯数字文本,有一些不是,如如果只要把纯数字文本改为数字做法:
- 特殊用法
- 如果一开始的日期就是文本格式,可以选中后直接分列,就可以把文本格式的日期改为日期型
基本替换
勾选后,如果内容是全等于查找值才会被替换
可以在格式中下拉选项选择,就能在单元格选择对应想要替换的格式
匹配符号
- (星号)任意多个字符
- (问号)任意一个字符
- 很多时候都与单元格匹配搭配使用
- (波浪线)让上方的匹配符号无效,就表示上方的匹配符号,加在匹配符号之前
基本定位
行用数字表示,列用字母表示,****分割
- 特殊用法
- 选择完单元格后,用其他方式重命名(比如中文),就可以以给予他的别名定位
选项卡定位
转到就是定位,在里面可以设置定位条件
批注
在 中可以批量管理批注
可以通过选项卡定位条件来定位批注
定位公式
定位公式也在选项卡定位条件中
*空值填充
在选项卡定位条件中选择空值
合并填充
如果多个单元格合并对应多个值,那么就无法用这个数据做数据透视表
图片
不推荐只选中一列后进行排序,会让其他值不对应
汉字排序
因为汉字是依靠拼音排序的,使用有很多时候会无法正常排序(如一,二,三,四,五)
无法正常排序的汉字必须要借助
插入排序
如果筛选完成后就只需要筛出来的数据,可以在中选择
筛选也可以筛选开头或结尾的字符,并且支持
高级筛选
条件
在高级筛选中筛选条件由表格组成,表格必须加字段名
如:我想要筛选年龄为25且身高为185的男生
筛选条件为:
将这一区域放入高级筛选的条件区域中
-
逻辑关系
同行为且,不同行为或
- 且
年龄 身高 25 185 - 或
年龄 身高 25 185 -
数值条件
- 直接在单元格里面写表达式
年龄 身高 >20 >185 -
逻辑值筛选
- 在条件格式中写变量与变量,一定不能加正确的字段名
年零 =G5<M9 =A4>S8 - 字段名绝对不能是正确的,可以空但是必须选中字段名
高级筛选列去重
- 列去重
先分类再汇总,是数据透视表的简化版本
分类汇总前必须先对要分类的列排序,作用是把一样的值放在一起
经过分类汇总的数据可以通过选项卡进行删除
多列的分类汇总
先对多列排序,关键字分主次,由大范围到小范围
- 若想将汇总区域数据复制到其他地方,还是通过条件定位可见单元格复制
合并相同内容的单元格
因为单元格的值合并后只保留一个
可以通过空的单元格合并后,或直接把空单元格格式刷刷到需要合并的有值的单元格上
写允许的条件
数据有效性满足引用
输入不重复记录
搭配函数COUNTIF()
固定输入值
在数据验证的中选择,来源必须用英文逗号分隔
保护记录
因为数据有效性的原理是先输入值,然后再运算公式,如果公式为TRUE就允许写入,公式是可以自定义的,所以只需要给需要的记录设置为绝对是的公式,那么就实现了保护记录
绝对是的公式:
- 也可以设置出错警告,输入法模式
- 记录有效性的删除也在记录有效性的选项卡中
通过拖拽到行列进行数据透视
-
更改汇总方式
-
查看数据值
-
更改行列标签频率
-
不需要自动的行标签求和
前提是只能是数值
组合的前提:
1 . 不能有空格
2 . 必须都是相同的数据类型
如果不想要数据透视表,可以通过全选工作表后,直接delete或用其他行覆盖掉数据透视表的行
必须以等号****开头
算术运算符
在EXCEL中文本用双引号****引起来
比较运算符
比较运算符的结果只会是**,分别表示**
-
特殊用法
- 不用if函数做到满足条件的加上加数
-
文本格式用函数无法聚合,但是用算术运算符可以求和,如果想让文本转换成数值可以通过****来实现
快捷键:F4
- 相对引用:
- 绝对引用:
所有函数的比较条件都必须以字符串的形式传递
RANK
排名
SUM
求和
可以用来搭配条件定位来实现跳跃性的求和
IF
函数可嵌套
也可以通过多个IF函数做算术运算
如:我要完成比较多的分级后返回每个级对应的值,就可以用if判断后如果不满足就等于****,然后再把所有的加起来
异常值处理 ISERROR
-
函数ISERROR()
常与IF搭配使用
逻辑函数
-
AND(),OR(),NOT()
他们都是函数,不是关键字
计数函数
-
COUNT(),只会给数字计数
-
COUNTIF(),将满足条件的记录计数
- 如果需要加入比较条件,就必须把条件以字符串格式传入
- 函数只会识别前15位,所以如果需要更多识别就必须连上通配符
- 如果要将符合条件的记录做单元格样式,就要使用条件格式
-
COUNTIFS(),将满足条件的记录计数,可以多条件
条件求和
SUMIF
将符合条件的记录求和
如果条件区域也是求和项,那么求和项可以不写
-
函数容错性
SUMIF()的有很强的容错性(多方法)
- 如果传入一个很少的单元格值,它就会默认这一整列为
- 如果传入一个单元格值,他会认为以这个值为字段的列为
-
容错性要点
条件区域必须与求和区域的开头行相同,就是条件区域从哪一行开头,求和区域也要从哪一行开头,包括所有的容错性用法
-
多条件思路
如果有多个条件去求和,那么可以用****将他们连起来成为辅助列,然后用辅助列进行判断求和
-
特殊用法
如果我发现我需要查找一个东西(是唯一的)对应一个值(前提是数值型),可以用SUMIF,虽然是求和,但是可以起查找作用
SUMIFS
多条件求和,参数格式有较大区别
Vlookup
查找
注意要点
-
的最左侧列必须是 所在的列
-
,顾名思义就是在查找区间中,从左侧往右侧数第几列
-
,FALSE/0代表精准匹配,TRUE/1代表模糊匹配。(一定要写)
-
一定要注意找区间的引用是否绝对
-
查找值如果不唯一,就只会查找到第一个
-
与的左侧列的数据类型必须一样
-
如果不一样就需要转换(不是直接变更单元格的数据类型),用计算强转
-
如果Vlookup找不到,就会返回**#N/A**,表示空值,判断空值用ISNA()
-
模糊匹配
注:有些匹配可以用通配符解决,不一定是模糊匹配
模糊匹配只会匹配到小于等于自己的最大值
一般用于区间分割查找,因为一般区间只会写每间的起始值
Hlookup
相当于Vlookup的转置函数
-
的最上侧行必须是 所在的行
-
,顾名思义就是在查找区间中,从左侧往右侧数第几行
-
其他与Vlookup相同
Lookup
比Vlookup自由度更高,只能模糊匹配
-
可以直接指定返回值列,不用在查找区间返回
-
如何让Lookup精确匹配
-
先写条件:*0/(查找区间=查找值)1
- 将布尔值转换成**表示后,如果做除数0**就会报错,就会剩下精确匹配的哪一个
-
再用lookup
-
找1是因为模糊匹配会最先返回****的值,就可以让他准确返回
-
-
-
Lookup多条件
- 与精准匹配差不多,就是将多个条件的**相乘后做0的除数**
MATCH
单查询
返回查找列中的第几行
INDEX
取值
和搭配使用可以满足Vlookup的短板
COLUMN
返回列号
ROW
返回行号
TEXT
返回将单元格值转换为对应格式的值
因为在EXCEL里面,所有的值被设置格式之后本值都不会改变,用text就可以改变并可以复制
日期函数
时间运算
在Excel里面,单位****表示了整天,小数表示了时间
但是,所有的时间都是小数并且****
时间运算时,就必须把给出的多少**转化成以整天为单位的小数**
日期运算
加减即可
函数
- 取年份
- 取月份
- 取天数
- 组合日期
求每个月的最后一天
因为每个月的第一天都是****,所以求当前日期的最后一天,就是将后一个月的第一天减一
求月份的天数
就是把最后一天取天数即可
DATEDIF
属于隐藏函数,专求间隔日期
起始时间必须小于终止时间
间隔单位用****括起来
WEEKNUM
返回日期是所在年份的第几周
WEEKDAY
返回日期是所在周的第几天
条件格式中可以查找重复值
条件格式先用大范围,再用小范围
切片器必须在****文件使用
- 跟公式用法相同
汉字算1位字符
将单元格值从左开始取几位
将单元格值从右开始取几位
(从左向右)将单元格值从中间位开始取几位
取位数包含起始位数
如果不确定取的位数可以指定一个很大的值来达到目的,但是不能缺少参数
-
提取身份证性别位
寻找字符在字符串的第几位
如果没找到则返回****
求字符长度
求字节长度
取尾拖的中文字符
四舍五入
向上进位,指定位数后,直接进位
如: -->
向下舍位,指定位数后,直接舍位
如: -->
直接取整,处理负值会有问题
取余数
只取0或0.5小数的数
跳跃取值
等差
每3列换行输出
就是一段区域,这段区域可以做运算,运算后也会表示整段区域
所有的数组公式必须用来运算
将引用字符串以参数传递给函数,就可以把单元格值引用出来
-
INDIRECT函数引用时,如果工作表名有特殊符号,就会引用出错,包括如果表名与引用字符串一样也会出错
-
解决方法
- 将前面的字符串两边链接一对引号
-
前导知识
-
可以给工作区命名别名
-
-
制作
- 用别名就可以用数据验证来引用单元格值,但是要用INDIRECT函数来引用
-
让图标或图片按照单元格改变
设置后可以将图表折叠
镜像图标
坐标轴设置
注:复合图必须设置那个数据在主或次坐标轴
选择数据轴:
主次坐标轴设置:
调整坐标轴大小可以调整图像的位置
特殊图像
可以把插入的形状直接粘贴到数据轴上
系列:一列或一行数据在图表中叫做一个系列
原理
使用表单控件创建动态图
Alt + Enter
条件格式中选择重复值
数据 -> 数据工具 -> 删除重复值
列宽必须足够才能合并
替换
生成已经输入过的去重后的下拉列表
REPLACE
替换多少个包含起始位置
SUBSTITUTE
字符串匹配替换
替换单元格中的第几个,省略的话就替换全部
FIND
查找一个字符串在另一个字符串的位置,区分大小写
SEARCH
查找一个字符串在另一个字符串的位置,不区分大小写
TODAY
返回当前日期
EOMONTH
- 取值参数:
- -1 上个月
- 0 当月
- 1 下月
IFERROR
测试单元格是否报错
单元格偏移
如果单元格是区域,则偏移整个区域
COUNTBLANK
统计空值的个数
SUMPRODUCT
将给定数组中,每个数组对应元素相乘,返回乘积之和
RANK
返回一个数字在一列中的排位
FLOOR
将数字向下舍入到给出基数的最接近倍数
RANDBETWEEN
返回给出区间中的随机数,区间是左闭右开
关键字区分大小写
启用所有的宏:
-
进入VBA编辑界面
ALT+F11
开发工具 -> Visual Basic
右键工作表 -> 查看代码
-
保存代码
需要把代码与工作表一起保存,他的后缀名是****
录制宏
将在excel中的操作以代码的形式保存
局限性:录制宏有很死的逻辑,所以说还是需要人为编写
-
相对引用
使用方法:录制宏后打开使用相对引用
相对引用就是对于原单元格做相应的偏移
定义
基础关键字
- 单元格变量:
- ,生成弹窗输出
- ,输入并赋值给变量
- 获取计算机内部时间
选择单元格
- 选中单元格:
变量类型
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NdZmmDCP-1669273206149)(变量的数据类型.png)]
定义
-
定义变量是可以简写的
-
定义多个变量用逗号分隔
如果不定义变量,默认使用Variant,内存占用空间较大
``
单元格偏移
如果单元格是区域,则偏移整个区域
COUNTBLANK
统计空值的个数
SUMPRODUCT
将给定数组中,每个数组对应元素相乘,返回乘积之和
RANK
返回一个数字在一列中的排位
FLOOR
将数字向下舍入到给出基数的最接近倍数
RANDBETWEEN
返回给出区间中的随机数,区间是左闭右开
关键字区分大小写
启用所有的宏:
-
进入VBA编辑界面
ALT+F11
开发工具 -> Visual Basic
右键工作表 -> 查看代码
-
保存代码
需要把代码与工作表一起保存,他的后缀名是****
录制宏
将在excel中的操作以代码的形式保存
局限性:录制宏有很死的逻辑,所以说还是需要人为编写
-
相对引用
使用方法:录制宏后打开使用相对引用
相对引用就是对于原单元格做相应的偏移
定义
基础关键字
- 单元格变量:
- ,生成弹窗输出
- ,输入并赋值给变量
- 获取计算机内部时间
选择单元格
- 选中单元格:
变量类型
定义
-
定义变量是可以简写的
-
定义多个变量用逗号分隔
如果不定义变量,默认使用Variant,内存占用空间较大
隶属于
如果出错继续执行下一行
一般使用的话需要加一个循环结束判断
基本对象
-
单元格对象:
-
工作表对象:
若要使用遍历需要把变量定义为工作表类型
Worksheets
工作表对象
注意:
Worksheets表示工作表对象,如果**只会返回工作表**的个数
sheets是全局的返回个数(如视图)
方法
-
Select
选中工作表
- 工作表表示方法
-
Add
添加工作表
- 参数赋值
-
参数详解
1 .
在某表前或后插入工作表
2 .
插入几个工作表
3 .
插入工作表的类型
-
Delete
删除表
- 直接删会触发警告触发器,需要删除前屏蔽,删完后打开
-
Copy
复制表
- 如果没有参数,则会新建文件后拷贝
属性
-
Count
返回工作表个数,是只读的
- 常用方法
总是在最后一张表插入,同时**还可以表示最后一张表或者新插入的表**
-
Name
Workbooks
工作簿对象
路径(Filename)要写绝对路径+后缀名
方法
-
Open
打开文件
-
当前活动的工作薄对象
每当open之后的工作薄就是这个对象
-
每次运行后都会报警告和文件刷新,这两个必须成对使用
-
-
Add
添加工作簿
-
创建工作簿后需要保存
保存后会自动打开
-
备份保存
ThisWorkbook == ActiveWorkbook
-
Range
单元格对象
-
表示方法
-
定义变量
方法
-
Offset
偏移
- 遵循 上减下加,左减右加
-
End
以给出单元格为起点,到达最后一个被使用的单元格
-
Resize
在指定单元格基础下,重设单元格区域
- 遵循 上减下加,左减右加
-
Copy
复制单元格
- 如果复制整行或整列,目标单元格一定要从第一个行/列单元格开始
-
Merge
合并选中的单元格
-
*AutoFilter
筛选
-
参数详解
- Field 可选,表示筛选列的整形偏移量
- Criteria1 可选。筛选条件字符串
- Operator 可选,指定筛选类型。设置为xlAutoFileterOpearator枚举中的常量之一
-
取消筛选
-
-
Find
查找
返回就是返回单元格,使用就可以选中找到的单元格
但是如果没找到就会报错
属性
-
Value
单元格的值
- 常用于对象的值需要作为参数时使用
-
Row,Column
单元格行号和列号
-
EntireRow/Column
单元格的整行/整列
最后一行的表示方法
在Visual Basic双击工作表,就可以选择对象和事件
可以控制事件,让事件只执行一次
SelectionChange
选区被改变
Change
只要工作表被改变就会触发,慎用
BeforeSave
在保存前执行,工作在Workbook上的事件
VBA函数与工作表函数不一样,但是工作表函数可以呗调用
若要在工作表上运行就需要先选择工作表:工作表.select
自定义函数
定义:
定义出来后可以在工作表使用,也可以在****中使用
Format
更改格式
Isnumberic
判断是否是数字
Val
将输入的转换为数值
文本函数
InStr
字符在字符串中的第几个
Split
分隔字符串,返回数组,数组下标0开头。引用用****小括号
日期函数
DateSerial
将给出的年月日,合并为日期型
相当于Excel的代码库,可以让EXCEL打开时加载代码库中的代码
需要在对象上面插入模块
加载宏要保存为文件,路径不可更改
加载后就可以使用,一般用添加宏选项卡的方式来使用
如果是函数,就可以直接使用了
文件操作一般分层使用:工作簿 -> 工作表 -> 单元格
DIR
查看是否存在这个文件,返回文件名,可使用通配符
-
匹配机制
匹配第一个后,匹配时不给参数就可以匹配到第一个匹配路径的第二个值或者更多的值
-
通配符
SET
将对象引用赋值给变量
文件对象:可以用打开
跨文件需要吧对象名写全,如****
可以提高代码运行速度
定义动态数组,0开头
可以给数组赋值一整个区域
-
数组使用区域
-
值 引用
-
重新定义数组下标
不能再用定义同一个数组
定义静态数组
可存储****个数据,从a开头
可以通过数组名吧所有值输出,但是输出区域的维度必须跟数组的维度一样
引用:
命令按钮
- 鼠标悬停事件
选项按钮
- 组名,同组名只能被选择一个,所以需要把同类型的按钮设同组名
ShowModel
显示方式:****表示独占
常用事件
Activate
表单激活时触发
一般用于隐藏EXCEL主窗体
QueryClose
表单退出时触发
一般用于关闭EXCEL