Excel VBA中使用#
符号是什么意思?
它是这样用的:
a = b /100#
我不明白100
后#
的意义?
Double 的类型声明字符是数字符号 (#)。也称为哈希
其他类型声明字符包括:
- 整数 %
- 长和
- 货币 @
- 单!
- 双 #
- 字符串 $
不明白#在这里的意义。
这意味着在计算表达式时,前面的数字类型声明字符被视为特定数据类型,而不是a 变式。
请看这个例子,它们基本相同。
Sub Sample1()
Dim a#
a = 1.2
Debug.Print a
End Sub
Sub Sample2()
Dim a As Double
a = 1.2
Debug.Print a
End Sub
编辑
让我更详细地解释一下。
考虑这两个过程
Sub Sample1()
Dim a As Double, b As Integer
b = 32767
a = b * 100
Debug.Print a
End Sub
Sub Sample2()
Dim a As Double, b As Integer
b = 32767
a = b * 100#
Debug.Print a
End Sub
问题:其中一个会失败。你能猜出是哪一个吗?
答:第一个过程Sub Sample1()
将失败。
原因:
在 Sample2
中,当您执行b * 100#
时,计算结果将为 Double
类型。由于它在 Double 的限制范围内,因此计算成功并将结果分配给变量 a
。
现在在Sample1
,当你做b * 100
计算结果将是Integer
类型,因为两个操作数都是整数类型。但计算结果超出了整数存储的限制。结果它会出错。
希望对:)有所帮助