VBA学习_1:数据类型

摘要:
VBA数据类型Boolean integer:整型整数、字节字节、长整型长十进制:十进制小数、单精度浮点单精度、双精度浮点双货币字符串字符串字符串字符串(固定长度和不定长度)日期对象变量用户定义的类型声明变量Dim变量名称作为数据类型私有变量名作为数据类型声明私有变量Public

VBA的数据类型

  • 布尔型Boolean
  • 整数:整数型Integer、字节型Byte、长整数型Long
  • 小数:小数型Decimal、单精度浮点型Single、双精度浮点型Double、货币型Currency
  • 字符串型Sting(定长和不定长)
  • 日期型Date
  • 对象型Object
  • 变体型Variant
  • 用户自定义类型

声明变量

  Dim 变量名 As 数据类型

  Private 变量名 As 数据类型    声明一个私有变量

  Public 变量名 As 数据类型     声明一个公有变量

  Static 变量名 As 数据类型   声明一个静态变量,当程序结束后,,静态变量会保持原值不变

  变量名必须以字母(或者汉字开头),不能包含空格、句号、感叹号、@、&、$和#等,最长不超过255个字符

Dim txt As String  '声明一个String类型的变量txt
Private txt As String  '声明一个私有String类型的变量txt
Public txt As String  '声明一个公有String类型的变量txt
Static txt As String  '声明一个静态String类型的变量txt

变量赋值

给数据类型变量赋值

  变量名称 = 要存储的数据 或者 Let 变量名称 = 要存储的数据

'exp:把数值3000存储到变量IntCount中
Dim IntCount As Integer '定义变量 IntCount = 3000 '给变量赋值,或者Let IntCount = 3000

给对象类型变量赋值

  Set 变量名称 = 要存储的数据

Dim sht As Worksheet  '定义一个工作表对象sht
Set sht = ActiveSheet '将活动工作表赋值给变量sht
Sub test()
    Dim IntCount As Integer      '定义一个变量
    IntCount = 4000        '给变量赋值
    Range("A1").Value = IntCount  '把变量值写入活动工作表的A1中
End Sub
Sub test2()
  Dim sht As Worksheet
  Set sht = ActiveSheet
  sht.Range("A1").Value = "我在学习VBA"
End Sub

使用变量类型声明符定义变量类型

定义一个String类型: Dim 变量名称$    (Dim 变量名称 As String)
定义一个Integer类型:Dim 变量名称%    (Dim 变量名称 As Integer)
定义一个Long类型: Dim 变量名称&      (Dim 变量名称 As Long)
定义一个Single类型:Dim 变量名称!     (Dim 变量名称 As Single)
定义一个Double类型: Dim 变量名称#    (Dim 变量名称 As Double)
定义一个Currency类型:Dim 变量名称@   (Dim 变量名称 As Currency)

声明变量是可以不指定变量类型(变体型Variant,可以存储任意类型变量)

  Dim 变量名称     

变量按作用域分类

本地变量:在一个过程中使用Dim或者Static声明变量作用域为本过程,称为本地变量(单个过程)

'第一个程序
Sub test_01()
    Dim a$
    a = "我是一个变量"
End Sub

'第二个程序
Sub test_02()
    MsgBox a  '输出空
End Sub

模块级变量:在模块的第一个过程之前使用Dim或者Private声明变量,作用域为声明变量语句所在的模块中的所有过程,称为模块级变量(单个模块)

Dim a$
Private b$
Sub test_01()
    a = "我是一个变量"
    b = "我也是一个变量"
    MsgBox a
    MsgBox b
End Sub

公共变量:在一个模块的第一个过程之前使用Public声明变量,作用域为所有模块,称为公共变量(所有模块)

Public b$
Sub test_01()
    b = "我也是一个变量"
    MsgBox b
End Sub

  

免责声明:文章转载自《VBA学习_1:数据类型》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇iOS -证书制作0930下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

PHP中的全局变量global和$GLOBALS的区别

1.global Global的作用是定义全局变量,但是这个全局变量不是应用于整个网站,而是应用于当前页面,包括include或require的所有文件。 但是在函数体内定义的global变量,函数体内可以使用,在函数体外定义的global变量不能在函数体内使用,具体看下面示例。 (1)在函数体内定义global变量,函数体内可以使用。 <?php...

perl 中的my和全局变量

$Some::stuff 使用包some的标准变量$stuff our 把名字限制于一个作用域, local 把值限制于一个作用域, my 把名字和值都限制于一个作用域 my变量: [root@master Webqq]# cat t5.pl {my $var=11;print "$var is 1--$var ";}{print "$va...

Ansible之路——第四章:Host Inventory

Ansible 可同时操作属于一个组的多台主机,组和主机之间的关系通过 inventory 文件配置. 默认的文件路径为 /etc/ansible/hosts。 除默认文件外,还可以同时使用多个 inventory 文件,也可以从动态源,或云上拉取 inventory 配置信息。 4.1 静态Inventory文件  静态Inventory指的是在文件/...

erlang 入门(1)

erl- 命令以.结尾- %为注释- 变量必须大写开头 X = 12.- [1,3.4,true] is a list and {person, 25, "Jason"} is a tuple. - tuple赋值orpattern match{ip, IP} = {ip, "192.168.0.1"}.{Atom, IP} = {ip, "192.168...

ES6 阮一峰阅读学习

参考: ECMAScript6入门   就是随便看看,了解一下。 一、ECMAScript6简介 1. 什么是ECMAScript6? JavaScript语言的下一代标准。2015年6月发布,正式名称是《ECMAScript2015标准》。 思考:编程语言和英语、法语语言差不多吧。其实就是语言的标准、规范之类,和英语语法差不多的东西吧 = =! 二、le...

VB.Net 数据类型,变量申明字符

数据类型 空间 范围 note String 平台而定 0到20亿(231) Byte 1Byte 0~255无符号 Chare 2Byte 0~65535 0~65535的无符号整型,代表Unicode字符 Char不能直接转换成数值类型必须通过Asc(),AscW()函数 Boolean 2Byte Short 2...