分享

Excel VBA(6) – 声明变量那些事

 L罗乐 2019-02-08

我们在制作工资条的时候,已经声明过变量了,具体可参阅 

Excel VBA(5) – 一键制作工资条


那篇主要从应用角度写,为了让大家对 VBA 编程有个总体的概念,所以变量声明部分一笔带过,没有详细展开。


今天就来说说变量声明那些事。


1. 什么是变量?

  • 与任何编程语言一样,变量和常量是存储数据的不同“容器”

  • 顾名思义,变量的数据是可以更换的

  • 而常量的数据是固定不变的


2. 声明变量

  • 既然变量是可以自定义的,我们在使用之前就要对它进行声明。打个比方,摆婚宴就是为了向亲朋好友声明:我结婚了

  • VBA 的变量声明格式为:

    Dim 变量名 As 数据类型

    • 变量名必须以字母或汉字开头,不能包含特殊字符和空格

    • 变量名最长不得超过 255 字符(超过 255 字符的,难道贵司以代码长短考核 KPI 吗?)


3. VBA 的数据类型


4. 声明多个变量

  • 可以写在同一个 Dim 后面,变量名之间用逗号隔开,例如

    Dim i As Integer, j As Long

  • 也可以用不同的 Dim 语句声明,例如

    Dim i As Integer

    Dim j As Long


5. 如果不声明变量

  • 不声明变量类型的话,默认为 Variant 类型

  • Variant 为变体型,可以根据需要的数据类型改变自身类型与之匹配


6. 为什么要声明变量

  • 既然有 72 般变化的 Variant 类型,为什么还要声明变量?

  • 因为 Variant 占用的存储空间较大,无论程序运行速度还是存储空间,都不优化。所以如非必要,请不要免去声明变量步骤


7. 强制声明变量

  • 既然声明变量那么重要,我们能否强制?

  • 可以在模块的第一句输入如下代码:

    Option Explicit

  • 请从现在开始,养成强制声明变量的习惯,当你将来代码越写越多,定会感激我

  • 也可以在 VBE 的窗口中点击“工具”-->“选项”-->勾选“要求变量声明”,对所有模块自动强制变量声明

  • 在强制声明变量的模块中,如果忘记声明变量,运行程序时,会提示编译错误:变量未定义


8. 变量的作用域:


9. 给变量赋值

  • 把数据存储到变量里,称为给变量赋值

  • 语句为:

    [Let] 变量名称 = 数据

  • Let 可以省略


10. 给常量的声明及赋值

  • 常量不仅需要声明,还要在声明的同时就赋值

  • 赋值以后的常量不能再重新赋值

  • 语句为:

    Const 变量名称 As 数据 = 数值


11. 常量的作用域:

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多