一、什么是变量、常量

  1. 简单来说,变量和常量都是名字。<br />例如我两只狗,有一只狗叫小黑,一只叫大花。<br />那么“小黑”“大花”就是两个变量,“小黑”指向的是就是我的这个饭量又大、皮肤又黑、又调皮的狗。但是“小黑”不一定总是指向这个饭量又大、皮肤又黑、又调皮的狗,没准我信仰了一条狗,我说这一条更适合“小黑”这个名字,然后就把“小黑”指向了这第三条狗。<br />也就是说变量时会改变的量。而常量与此相反,常量是定义后以后就不会改变的量。<br />如我说“大花”是这个花很大的狗,什么时候都指向的是这个花很大的狗,那“大花”就属于常量。

二、如何定义与赋值

定义的意思是想了一个名字。
赋值的意思是我把这个名字指向了第四条狗。

2.1 语法

  • 变量定义:Dim 变量名 As 数据类型
  • 变量赋值:Let 变量名 = 变量值

赋值中的Let可以省略。

  • 常量定义(在定义时设置其值):Const 常量名 As 数据类型=常量值

其中变量名/常量名有以下限制:

  1. 必须以字母或汉字开头(日语假名,汉语也是可以的)
  2. 不能包含空格、句号、感叹号、@、&、$和#等特殊符号
  3. 最长不能超过255个字符(一个汉字计2个字符)
  4. 不区分大小写
  5. 使用的名称不能与VBA本身的函数和关键字相同

2.2 示例

'定义
Dim weightOfXiaohei As Integer '小黑的体重,因为会变,所以定义成变量
Dim weightOfDahua As Integer '大花的体重

Const PI As Integer = 3 'π值,因为不会变,所以定义成常量

'赋值
weightOfXiaohei = 100
weightOfDahua = 200

三、有哪些类型

Integer:代表了这个变量是什么类型的。
例如我想需要小狗体重的时候用Integer,我需要小狗名字的时候用String,我需要小狗的出生日期的时候用Date
数据类型有很多中,暂时了解以上三种即可。

四、如何使用

例子:计算a+b的值

Dim a As Integer
Dim b As Integer

Dim result As Integer
result = a + b

MsgBox (result)

五、练习

理解以上代码中的每一行含义,尝试完成以下任务:

  • 定义三个变量小狗的名字体重年龄
  • 通过MsgBox输出”小狗名字,你的体重是体重千克,你已经年龄岁了”

    参考

  1. 使用 VBA (常量) | Microsoft Docs
  2. Dim 语句 (VBA) | Microsoft Docs