VBA 语句

VBA通常每条语句一行代码。


1 自动规范化

当我们编写的代码不规范时,VBA开发工具会自动帮助我们进行规范化,包括:

1)过程名称的大小写转化

例如编写如下代码:

dim i as integer

保存代码会自动规范化,相应关键字大小写调整正确。

Dim i As Integer

2)加入或去掉空格

i=  1

保存后

i = 1

等于号=的前后保留一个空格

注意事项:VBA开发工具不直接提供整个文件的代码美化功能:主要是缩进的自动处理。


2 自动提示

在调用函数时,会进行参数提示,以及提供参数值进行选择。

当输入函数名称msgbox会自动提示参数名称。

VBA 语句自动提示

当参数为可选值时,会自动提示参数值列表框供选择。

VBA 语句自动提示

按TAB键确认选择,按Enter键确认并换行。所以经常使用TAB键。


参数值选择列表框被关闭后如何重新打开?

可以点击工具栏上的[自动完成关键字]或[常数列表],如果存在匹配列表会再次打开。

VBA 语句自动提示


3 自动完成

编码时输入部分代码,会自动完成某些代码。

输入如下代码

sub statement2

换行后会自动补充代码如下

Sub statement2()

End Sub

自动补充了过程后的一对小括号与End Sub。


4 查看过程帮助

方法1:查看在线帮助

编写语句时经常调用系统的过程(或函数),需要查看相应的帮助。

将鼠标光标放到过程上(以Msgbox为例),按F1键(有的需要Fn+F1)打开微软在线帮助文件。

VBA 查看帮助

如果F1被其它软件占用,可点击上方的帮助按钮。

img

有些函数使用方法1无法打开在线帮助页面,可以使用方法2。


方法2:查看过程定义与在线帮助

鼠标光标放在过程上,右键菜单点击[定义]菜单,会打开对象浏览器,显示

VBA 查看定义

可点击链接查看函数信息,点击可选参数链接查看相应值。

函数右键点击[帮助],可以打开在线帮助页面。

VBA 查看帮助


5 一行多条语句

VBA可以在一行中编写多条语句,中间用冒号隔开。

Sub statement2()
  Dim i As Integer: Dim j As Integer: i = 2023
  MsgBox "小步教程" & i, vbOK
End Sub

过程中的第一句代码通过两个冒号:把三句代码放在一行。

与分三行写完全等价。

一般不建议这种写法。


6 一条语句多行

有时一句代码很长,如果直接写会出现滚动条,如果要完整代码,需要拖到滚动条,影响了代码的阅读效率与编码效率。

因此需要将一句代码写成多行形式。

VBA 一条语句多行

在运算符或参数之后加下划线_,然后换行,效果如下:

Sub statement3()
  Debug.Print "1这里需要很长很长很长很长很长很长的参数" & _
  "2这里需要很长很长很长很长很长很长的参数" & _
  "3这里需要很长很长很长很长很长很长的参数" & _
  "4这里需要很长很长很长很长很长很长的参数" & _
  "5这里需要很长很长很长很长很长很长的参数"

End Sub

例2。在参数的逗号的前后加下划线。

Sub statement4()
  MsgBox "代码换行演示。小步教程。", _
   vbOKCancel
End Sub