变量的使用方法有下面3个步骤
声明变量
赋值给变量
利用变量
声明变量
尤其是对于初学者来说,一定要声明变量,虽然在vba中支持使用未声明的变量。
但是,声明变量,适当的注释等,规范代码对于日后的维护等具有非常重要的作用。
所以,我们建议强制声明变量。
步骤1:打开Excel,按Alt + F11 进入VBE 开发者界面。
步骤2:点击工具 → 选项 → 要求声明变量(打钩) → 确定
再次进入VBE开发者界面,你会发现在代码的上面会自动出来一行,Option Explicit ,这就是强制要求声明变量。
这样一来,就要求你必须使用声明后的变量,如果使用未声明的变量则会报错。
例:
Option Explicit
Sub test()
cnt = 1
End Sub
执行后:
赋值给变量
在VBA中使用「=」来给变量赋值,将右边的值给左边。
例如:cnt = 1 的意思就是 把 1 给 名字叫作 cnt 的这个变量。
cnt = cnt + 1 的意思就是 把 cnt 的这个变量 加上1 给 cnt 的这个变量。
利用变量
跟赋值类似,只不过这次把变量放在「=」的右边,来给其他变量传递值。
例如:
tmp = 100
Range('A1') = tmp
这样就是先给 tmp 这个变量赋初始值 100,再将 tmp 这个变量 给单元格A1赋值。
这里需要注意的是引号「“”」的使用,如果写成 Range('A1') = 'tmp' ,虽然只多了小小的引号,但是意思完全就变了,'tmp'的意思是值为tmp的一个字符串,而tmp的意思是tmp这个变量。Range('A1') = 'tmp'也就变成了,把tmp这个值赋给单元格A1。
完整的使用过程:
Option Explicit
Sub test()
'声明一个名字叫作cnt的数值型变量
Dim cnt As Integer
'给变量cnt赋初始值 1
cnt = 1
'使用变量cnt,弹出Msgbox
MsgBox '现在是第' & cnt & '次!'
End Sub
执行后:
联系客服