Excel VBA学习——入门

Excel VBA学习——入门

前言

宏[macro]:一组可以自动执行的代码[vba]

  • 优点:重复执行相同的操作,可以考虑用宏;
  • 缺点:不够智能,无法交互工作,代码冗余;

解决方案:vba


一、VBA简介

1.1 VBA介绍

Visual Basic for Applications(VBA)是一种Visual Basic的一种宏语言,主要用来扩展Windows的应用式功能。

VBA是寄生于VB应用程序的版本,必须依赖父程序,e.g. EXCEL,CAD…


1.2 VBA与VB

VBA和VB的区别:

  • VB是编写应用程序,而VBA是使已有的应用程序(EXCEL,CAD)自动化;
  • VB具有自己的开发环境,而VBA必须寄生于已有的应用程序;
  • 运行VB开发的应用程序,不必安装VB,而VBA开发的程序必须依赖于它的父引用程序;

1.3 VBA用途

VBA的用途:

  • 规范用户操作,控制用户的操作行为;
  • 操作界面人性化,方便用户操作;
  • 多步骤,重复步骤可以执行VBA代码可以迅速实现;
  • 实现一些无法实现的功能;

1.4 Excel添加VBA

打开Excel,依次找到“文件”->“选项”->“自定义功能区”,在右侧主选项卡下面的选项中,找到“开发工具”,在前面的小框打勾,确定。返回Excel,即可在菜单栏右侧看到有开发工具:

image-20220113144652629


二、VBE简介

VBE就是VBA的编辑窗口,进入方式如下两种:

  • 快捷键:ALT+F11;
  • 菜单栏 --> 开发工具 --> Visual Basic;

image-20220113142650108


2.1 第一个VBA程序

basic
1
2
3
4
5
Sub sub_name() 
'
'中间这里是我们要实现各种操作的VBA代码
'
End Sub

其中Sub和末尾的End Sub是必须的固定形式,sub_name是过程名称,后面的括号()是必须的。VBA中允许使用中文作为过程名称,但建议还是尽量使用英文为好。


e.g.

basic
1
2
3
4
Sub Hello_World()
Debug.Print "Hello, World!"
MsgBox "Hello, World!"
End Sub

运行VBA代码有三种方式:

  • 菜单栏下面的工具栏中的绿色小三角: image-20220113142337051
  • 在菜单栏选择“运行”->“运行子过程/用户窗体 F5”
  • 快捷键F5

应该注意的是,如果运行代码前鼠标光标没有在任一个VBA过程内部,VBE会弹出一个对话框,请求选择将要用于运行的VBA过程:

image-20220113142316612


第一行代码Debug.Print "Hello, World!"会在位于VBE下方的“立即窗口”中输出双引号中的内容,即Hello, World

image-20220113143816316

(如果VBE中没有出现立即窗口,可以在菜单栏“视图”中勾选立即窗口显示)


第二行代码MsgBox "Hello, World!"则会以弹窗的形式显示双引号中的Hello, World!

image-20220113143926324


最后,包含有VBA代码的Excel文件不能再保存为.xls或.xlsx文件,应保存为.xlsm文件

image-20220113144129926


2.2 解决无法运行VBA

打开Excel,依次找到"文件"->“选项”->信任中心->“信任中心设置”->“宏设置”,将启用所有宏打开,不可能将开发人员宏设置打开,之后关闭Excel重新打开文件即可。

image-20220113144949042


参考资源:
Excel VBA 入门(零)
我要自学网 Excel VBA基础教程
-------------本文结束感谢您的阅读-------------