暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

VBA 变量基础教程

匠工精神 2021-09-19
1406

在上一篇VBA-解脱你重复的工作文章中,带大家感性的认识了下Excel VBA,从本篇开始带大家系统的学习下VBA的编程知识,先从学习 VBA 语法部分,带你进入真实的 VBA 世界,让你写出真正能用得到的代码。


本篇我们学习 VBA 最基本的一个概念VBA 变量


什么是 VBA 变量


VBA 变量是一个存储数据的 VBA 代码结构。变量存储的数据,可在程序运行过程中改变。又能代表它存储的数据,在程序中参与各类计算。

变量可以简单理解为 Excel 中的单元格引用地址,例如 A1。在公式中,A1 代表 A1 单元格内的数据,参与计算。

变量有两个重要的概念,变量名和变量类型。


  • 变量名代表变量的名称

  • 变量类型变量存储的数据的类型,例如数字、文本、逻辑值等。

声明变量

如果想在代码中使用变量,需要先声明,即给出变量名和变量类型。


声明变量使用以下语法:

Dim [变量名] As [数据类型]

Dim和As是 VBA 中声明变量需要使用的关键词。Dim表示声明语句的开始,As表示在它之后指定数据类型。

[变量名]和[数据]是,声明代码中可变部分,需要用户输入。

  • [变量名] 就是该变量的名称

  • [数据类型] 是该变量的数据类型


示例:

Dim name As String

可以看到,name是变量的名称,String是文本类型数据,代表姓名。

命名变量

变量是用来存放可以在脚本执行过程中改变的值命名的存储位置。所列的是用于命名一个变量的规则。

  • 必须使用一个字母作为第一个字符。

  • 不能使用空格,句号(.),感叹号(!),或字符@, &, $, #在变量名称中。

  • 名称不能超过255个字符。

  • 不能使用Visual Basic保留关键字作为变量名。

个人推荐使用驼峰命名。


变量类型

变量的第二个重要元素是变量类型,即变量存储数据的数据类型。正确指定数据类型,可以使程序编写和运行效率更高,并且易于理解。

另外,指定数据类型后,如果赋值不同类型的数据,VBA 会提示错误,这样可以避免使用错误的数据。


有许多的VBA的数据类型,它可以非常分为两大类,即数字和非数字数据类型。

数字数据类型

下表显示的数值数据类型和值的允许范围。

类型值范围
Byte0 - 255
Integer-32,768 - 32,767
Long-2,147,483,648 - 2,147,483,648
Single-3.402823E+38 ~ -1.401298E-45 为负值
1.401298E-45 ~  3.402823E+38 为正值
Double-1.79769313486232e+308 ~ -4.94065645841247E-324 为负值
4.94065645841247E-324 ~ 1.79769313486232e+308 为正值
Currency-922,337,203,685,477.5808 to 922,337,203,685,477.5807
Decimal+/- 79,228,162,514,264,337,593,543,950,335 if no decimal is use 
+/- 7.9228162514264337593543950335 (28 decimal places).

非数字数据类型

下表显示了非数值数据类型和值的允许范围。

类型值范围
String(fixed length)1 ~ 65,400 字符
String(variable length)0 ~ 2 十亿个字符
Date1月 1, 100 到12月 31, 9999
BooleanTrue 或False
Object任何嵌入对象
Variant(numeric)任何Double值一样大
Variant(text)同为可变长度的字符串

例子




Sub Variables_Demo()


 Dim name As String

name = "villiam"

Dim age As Integer

age
= 1234

MsgBox "Name is " & name & Chr(10) & "Age is " & age


End Sub

输出


总结


本篇主要介绍了 VBA 中的最基本的概念,变量。因为变量的值在程序运行过程中可以变化,因此使程序效率大大的提高。使用变量主要有3个步骤:

  1. 声明变量

  2. 指定变量的数据类型

  3. 给变量赋值

相信对于有编程经验的小伙伴来说,本篇内容应该很简单,也是学习一门编程语言的必经过程。

文章转载自匠工精神,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论