简单易学-VBA数据分析
2023-04-13 17:30:38 4 举报
AI智能生成
简单易学-VBA数据分析,介绍概念以及案例,主要基于excel中vb语言处理
作者其他创作
大纲/内容
VBA(Visual Basic for Applications),是一种自动化的语言,是微软办公(Microsoft Office)系列软件的内置变成语言, 目前EXCEL使用的比较普遍
简介
定义重复工作的程序,利用可视化的按钮等来方便操作
可视化编程环境:根据业务的需要,定制化操作页面
可以创建报表,减少实际报表设计中的操作
特点
快速生成周期性固定格式统计报表
细致的管理工作
应用
具有美观简洁的操作页面
为客户提供问题的解决方案
操作界面人性化,方便用户的操作
具有较好的移植性,可以在不同版本的excel中使用
优势
应用与优势
VBA简介
宏是一系列可执行的VBA程序的集合,它可以帮助执行一项或者多项操作
宏
录制宏的功能很强大,很多Excel功能都可以通过录制宏来进行,但是不是万能的,仅仅是自己加速完成VBA代码的一个工具,用宏录制,然后修改代码;需要注意的是,各个Excel版本的VBA代码都有差异,不同版本的录制宏可能不能通用
录制宏
1、在Excel中按下Alt+F11,就可以进入VBE界面在开发工具选项卡中,选择“录dao制宏”,设置宏名后,点击确定,就开始了宏的录制,大部分操作都会被录制成回宏代码
2、操作完成后,点击“停止录制”,就完成了宏代码的录制
3、用查看宏的方法,Alt+F11,在模块文件夹中就答可以看到录制的宏代码
VBA编辑器使用录制宏操作
VBA规范及基础语法介绍
Dim <<variable_name>> As <<variable_type>>
语法
变量名称必须使用一个字母作为第一个字符。
变量名称不能使用空格,句点(.),感叹号(!)或字符@,&,$,#。
变量名称的长度不能超过255个字符。
不能使用Visual Basic保留关键字作为变量名称
规则
例子
变量
Const <<constant_name>> As <<constant_type>> = <<constant_value>>
常量名称必须使用一个字母作为第一个字符
参见备注
常量名称不能在名称中使用空格,句点(.),感叹号(!)或字符@,&,$,#
常量名称的长度不能超过255个字符
不能使用Visual Basic保留关键字作为常量名称
子主题
常量
数组声明的方式与声明变量相同,只是数组变量的声明使用括号Dim <<variable_name>> As <<variable_type>>
若数组大小被指定为5,但是当数组索引从零开始时,它可以保持6个值
数组索引不能是负数
可以在一个数组变量中存储一个整数,字符串或字符
Dim arr1()
Dim arr2(5)
arr3= Array(\"apple\
定义
Dim arr(5)
arr(0) = \"10\"
arr(2) = 200
arr(4) = #10/07/2019# '日期
arr(5) = #12.45 PM# '时间
赋值
数组声明
多维数组
MsgBox (\"Line 1 : \
数组方法
数组
例子1
例子2
ReDim语句
+ : 两个操作数相加
- : 两个操作数相减
* : 两个操作数相乘
/ : 两个操作数相除
% : 模运算符,整数除法后的余数
^ : 指数运算符
算数运算符
= : 检查两个操作数的值是否相等。如果是,那么条件是真
<> : 检查两个操作数的值是否不相等。如果值不相等,则条件为真
> : 检查左操作数的值是否大于右操作数的值。如果是,那么条件是真
< : 检查左操作数的值是否小于右操作数的值。如果是,那么条件是真
>= : 检查左操作数的值是否大于或等于右操作数的值。 如果是,那么条件是真
<= : 检查左操作数的值是否小于或等于右操作数的值。如果是,那么条件是真
比较运算符
AND : 两个条件都为真,则表达式为真
OR : 如果两个条件中的任何一个为真,则条件为真
NOT : 用于反转其操作数的逻辑状态。 如果条件成立,那么逻辑非运算符结果是条件不成立
XOR : 如果表达式中只有一个表达式的值为True,则结果为True
逻辑运算符
运算符
Range(\"A1\") '表示A1单元格
Range(\"A1:A9\") '表示A1-A9单元格
Range
[A1] '表示A1单元格
[A1:A9] '表示A1到A9单元格
[]
Cells(第几行,第几列)
单元格的格式方法
if then 语句
条件判断结构
Select Case 语句
例子参见备注
选择判断结构
for next 语句
for each 语句
do while loop
循环结构
1、子过程不需要有返回一个值,而函数可能会或可能不会有返回一个值
2、子程序可以不用call关键字来调用
3、子程序总是包含在Sub和End Sub语句中
区别
过程调用函数
函数调用过程
sub 与 function 的区别
字符串的函数
返回当前的系统日期date()
将有效的日期和时间表达式转换为类型日期cdate(date)
日期函数
VBA基础篇
1、窗体俗称对话框,在可视化的面向对象的编程软件中都应该有。在VBA中也有,可以打开 excel->开发工具
基础属性:外观,位置,字体
行为属性和滚动条
2、点开Visual Basic就会进入到变成界面,然后就可以插入窗体
就是在初始化窗口时,要对窗口干的事情,比如给窗口属性赋值,给窗体内包含的控件赋初始值
Initialize
点击窗体时,会干的事情,比如隐藏窗体等等
Click
关闭窗体是要干的事情,比如保存文件,关闭excel等
Terminate
3、常用事件
窗口与事件
文本框(TextBox)
例子:名称赋值,是否选定 参见备注
例子:内容初始赋值 参见备注
复合框(ComboBox)
例子:参见备注
列表框(ListBox)
复选框(CheckBox)
选项按钮(OptionButton)
命令按钮(CommandButton)
常用的有标签
Excel控件及Excel控件的初始化
代表整个 Microsoft Excel 应用程序
应用程序范围的设置和选项
Application.ActiveCell 属性,返回range对象
Application.ActiveChart 属性,返回chart对象
Application.ActiveWorkbook属性,返回workbook对象
ActiveCell和ActiveSheet
Excel本身(Application),比如打开,关闭,保存
workbook代表一个 Microsoft Excel 工作簿workbook对应的还有一个workbooks对象,Workbook 对象是 Workbooks 集合的成员。Workbooks 集合包含 Microsoft Excel 中当前打开的所有 Workbook 对象。
工作簿(WorkBook)
Worksheet 对象是 Worksheets 集合的成员。Worksheets 集合包含某个工作簿中所有的 Worksheet 对象Worksheet 对象也是 Sheets 集合的成员
工作页签(WorkSheet)
代表某一单元格、某一行、某一列、某一选定区域(该区域可包含一个或若干连续单元格区域),或者某一三维区域
单元格(Rang)
常用对象
Excel自身对象简介及Excel对象的引用
1 如何关联已有的Excel文档和VBA
使用下面控件的controlsource,rowsource属性, BoundColumn 和 ControlSource 属性
2 如何关联控件和Excel数据
Excel窗体、控件与excel数据(单元格)的关联
VBA进阶篇
问题:如何统计每个汽车型号拥有哪些零件组成?excel中横向是汽车1,汽车2,纵向是轮胎1,轮胎2,轮胎3,轮胎4,方向盘1,方向盘2,座椅1,座椅2
1 先横向遍历汽车,为每辆汽车建立一个Sheet,填入汽车型号
再纵向遍历汽车零件,如果有零件,则在新Sheet里面填入零件名称和零件数量
思路:
VBA数据分析案例
1 常量与变量、2 数组、3 运算符、4 条件判断结构、5 循环语句、6 判断语句、7 单元格的格式方法、8 sub 与 function 的区别、9 字符串的函数、10 日期函数
VBA的基础的知识
1 窗体和事件、2 Excel控件及Excel控件的初始化、3 Excel自身对象简介及Excel对象的引用
VBA的进阶的知识
总结以及回顾
简单易学-VBA数据分析
0 条评论
回复 删除
下一页