2021-09-24 windows之VBA基础知识

2021/9/25 7:11:48

本文主要是介绍2021-09-24 windows之VBA基础知识,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

excel工作表与VBA代码:
VBA代码的编写环境叫做VBE
英语:visual basic environment
从excel工作表切换到VBE中,快捷键是:alt+F11
含有宏程序的excel文件不能用后缀名为xlsx保存,必须用xlsm的后缀名保存。
带有宏程序的文件,初次打开会提示用户是否启用(编辑)功能。
用户也可以在<开发工具>中的<宏>功能,去重新启用宏功能。
录制宏:打开<开发工具>选项卡<录制宏>功能,在弹出的对话框中输入宏的名称,说明,执行时的快捷键,宏程序的保存位置。在编辑工作表结束后,再次点击<停止录制>。把录制宏应用到其他工作表中,只需要按下刚才设置的快捷键。
使用相对引用来录制宏:打开<开发工具>,点击<使用相对引用>,然后点击<录制宏>。相对引用可以让我们从同一个工作表中多次执行相同步骤的操作。将自定义的操作应用到不同的行或列,比如可以很方便的隔行去应用自己设置的样式。
英文状态下的单引号表示注释的符号,绿色文字部分表示注释。
要学会查看VBA代码,如图:

 

 接下来,学习通过表单控件运行宏。
在<开发工具>中的<插入>中的<表单控件>,选择一个按钮。在弹出的对话框中选择要执行的宏。
移动按钮:右键一下,然后按住左键拖动。
注意:宏操作是不能撤回的,不可以按ctrl+z撤回。
通过快速访问工具栏运行宏:
首先在excel选项后台中,点击<快速访问工具栏>,把宏添加进去,设置好图标。
保存宏到个人工作簿:
如果01工作簿中没有宏,02工作簿中有宏,01的工作表想要应用02中的宏,就需要打开02工作簿。
如果把录制的宏保存到个人宏工作簿中,01中的工作表再想应用宏,就不用打开02了。
个人宏工作簿,excel默认保存的文件名为 personal.xlsb ,个人宏工作簿默认是隐藏的,必要时需要用<视图>下的<取消隐藏>让他显示出来。
个人宏工作簿是专门用来保存宏程序的文件,宏程序保存到个人宏工作簿之后,其他的工作簿文件是默认可以调用的。
VBA代码编辑:
插入模块,就是插入相应的宏代码。如图:

 右键,可以移除VBA代码模块,可以导出到其他位置,可以导入。
编写一个简单的VBA代码:

 第二个:

 VBA程序的变量类型:

 

 

 VBA程序的执行方式:

 一个模块中允许有多个sub子程序。
光标定位到第一个sub子程序中,然后点击运行,就会执行第一个。
光标定位到第二个sub子程序中,点击运行按钮就会执行第二个。
也可以打开<视图>中的<立即窗口>,在立即窗口中用命令<call 子程序名>运行。
VBA程序中多个变量的定义:

 variant可变数据类型:

 强制变量声明:

 变量的生命周期:也就是不同的变量定义方式,他的作用范围不同。如图:

 如果编写的VBA代码中有循环执行的结构,如果需要重置,让程序重新从0开始,要点击VBE界面左上角的<重新设置>。
static变量:
由关键字static定义的变量,在子程序中执行完一次后并不会失效,他会循环执行下去。

 常量的定义:
使用关键字:const  定义,常量的生命周期与变量相同,如果只在子程序sub内定义,则他的作用范围就是子程序内部。如果想让同一个模块内的所有子程序都可以使用定义的常量,就需要把定义写在子程序外部。如果想让同一工作簿下的所有模块都可以使用定义的常量,则需要加上关键字:public

 

 ActiveCell :活动单元格
Interior.color:内部颜色常量
vbRed:红色
?vbRed:通过立即窗口查询Red代码数字。
数学运算符:

 

 比较运算符:

 

 逻辑运算符:and or  not

 

 

 VBA命名规范:

 

 

 

 if选择结构:

select选择结构:

 

 for next循环结构:

 

 step关键字的使用:

 如何中断for循环:

 嵌套for循环:

 do while循环结构:

 do until循环结构:

 无参数的子程序:

 有参数的子程序:

 通过参数调用,实现不改变原代码的情况下,进行求值。
用户自定义函数:
可以直接在单元格中进行调用,也可以在<函数>中找到函数分类中的<自定义函数>

 

 一维数组:
第一种定义方式:

 第二种定义方式:
如果没有声明option base = 1 ,则表示数组下标从0开始。

 二维数组:

 动态数组:

 VBA面向对象:

 

 

 对象的层级架构:

 根据对象的层级架构给单元格赋值:

 单元格的引用:

 单元格引用之cells属性:
cells(2,3)表示第2行,第3列数据。

 offset属性:
offset(2,3)表示距离某个单元格的偏移量。

 select方法/activate方法:

 range的end属性:

 



这篇关于2021-09-24 windows之VBA基础知识的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程