vba怎么将Byte值赋给变量
给变量赋值
创建如下形式的表达式给变量赋值:变量在表达式左边,要赋的值在表达式右边。
例如: B = 200
标量变量和数组变量
多数情况下,只需为声明的变量赋一个值。只包含一个值的变量被称为标量变量。 有时候,将多个相关值赋给一个变量更为方便,因此可以创建
包含一系列值的变量,称为数组变量。数组变量和标量变量是以相同的方式声明的,唯一的区别是声明数组变量时变量名后面带有括号 ( )。下
例声明了一个包含 11 个元素的一维数组:
Dim A(10) '这种带确定的值一看我们就说他是静态数组,因为他给出他的长度。
虽然括号中显示的数字是 10,但由于在 VBScript 中所有...全部
给变量赋值
创建如下形式的表达式给变量赋值:变量在表达式左边,要赋的值在表达式右边。
例如: B = 200
标量变量和数组变量
多数情况下,只需为声明的变量赋一个值。只包含一个值的变量被称为标量变量。
有时候,将多个相关值赋给一个变量更为方便,因此可以创建
包含一系列值的变量,称为数组变量。数组变量和标量变量是以相同的方式声明的,唯一的区别是声明数组变量时变量名后面带有括号 ( )。下
例声明了一个包含 11 个元素的一维数组:
Dim A(10) '这种带确定的值一看我们就说他是静态数组,因为他给出他的长度。
虽然括号中显示的数字是 10,但由于在 VBScript 中所有数组都是基于 0 的,所以这个数组实际上包含 11 个元素。在基于 0 的数组中,数
组元素的数目总是括号中显示的数目加 1。
这种数组被称为固定大小的数组。
在数组中使用索引为数组的每个元素赋值。从 0 到 10,将数据赋给数组的元素,如下所示:
A(0) = 256
。 。 。
A(10) = 55
与此类似,使用索引可以检索到所需的数组元素的数据。
仔细体会下面的程式:
我已复制到VBE中,你可以打开VBE,然后运行看一下。
Sub 数组()
Dim arr1 As Integer
MsgBox arr1
arr1 = Array("1", "2", "3")
MsgBox arr1(0)
MsgBox arr1(1)
MsgBox arr1(2)
arr1 = 0
MsgBox arr1
End Sub
Sub 数组2()
Dim arr1(3) As Integer
arr1(0) = 0
arr1(1) = 1
arr1(2) = 2
arr1(3) = 3
MsgBox arr1(0)
MsgBox arr1(1)
MsgBox arr1(2)
MsgBox arr1(3)
End Sub
Sub 数组3()
Dim arr1() As Integer
ReDim arr1(3) '这个是必要的,不然就出错,
arr1(0) = 0
arr1(1) = 1
arr1(2) = 2
arr1(3) = 3
MsgBox arr1(0)
MsgBox arr1(1)
MsgBox arr1(2)
MsgBox arr1(3)
End Sub
Sub 常规速度()
Dim i%
Dim atimer
atimer = Timer
Documents。
Add
For i = 1 To 1000
Selection。InsertAfter i
Selection。InsertAfter Chr(13)
Next
MsgBox Timer - atimer
End Sub
Sub 数组速度()
Dim i%, astring
Dim atimer
atimer = Timer '当初时间
For i = 1 To 1000
astring = astring & i & Chr(13)
Next
Documents。
Add '添加新文档
Selection。InsertAfter astring
MsgBox Timer - atimer '相减等于运行的时间
End Sub
从上面我猜:静态的定义是Dim A(n) as integer(等,不一定是ineger),动态可以是dim a()as integer,还有一种是变量即默认的值如
dim a,其中注意因为a没有定义,所以他是Variant变量,当他应用于a=array("1","2","3")时,就相应于确定了一个静态数组,且赋了值。
这
是a就成了数组。同时,因为他是Variant变量,所以,这样赋值后,a=0,他也给设了一个值0,这个很特殊的。这时等于设a不为数组了,如之
后,再用msgbox a(0)等就出错了。
有点难理解,多看几遍就行了。
慢慢体会,细细玩味。
SomeVariable = A(8)
数组并不仅限于一维。声明多维数组时用逗号分隔括号中每个表示数组大小的数字。
在下例中,MyTable 变量是一个有 6 行和 11 列的二维数组: Dim MyTable(5, 10)
在二维数组中,括号中第一个数字表示行的数目,第二个数字表示列的数目。
也可以声明动态数组,即在运行脚本时大小发生变化的数组。对数组的最初声明使用 Dim 语句或 ReDim 语句。但是对于动态数组,括号中不包
含任何数字。例如:
Dim MyArray()
ReDim AnotherArray()
要使用动态数组,必须随后使用 ReDim 确定维数和每一维的大小。
在下例中,ReDim 将动态数组的初始大小设置为 25,而后面的 ReDim 语句
将数组的大小重新调整为 30,同时使用 Preserve 关键字在重新调整大小时保留数组的内容。
ReDim MyArray(25)
ReDim Preserve MyArray(30)
(这个很重要,扩大数组时使用的,缩小时,是从后向前删的。
可以看一个这个文档中VBE中的数组例子。)
重新调整动态数组大小的次数是没有任何限制的,但是应注意:将数组的大小调小时,将会丢失被删除元素的数据。
建常数
您可以使用 Const 语句在 VBScript 中创建用户自定义常数。
使用 Const 语句可以创建名称具有一定含义的字符串型或数值型常数,并给它们
赋原义值。例如:
Const MyString = "这是一个字符串。"
Const MyAge = 49
请注意字符串文字包含在两个引号 (" ") 之间。
这是区分字符串型常数和数值型常数的最明显的方法。
日期文字和时间文字包含在两个井号 (#) 之间。例如: Const CutoffDate = #6-1-97#
最好采用一个命名方案以区分常数和变量。
这样可以避免在运行脚本时对常数重新赋值。
例如,可以使用"vb"或"con"作常数名的前缀,或将常数名的所有字母大写。
将常数和变量区分开可以在开发复杂的脚本时避免混乱。
。收起