57

#Excel VBA中符号的使用是什么意思?

它是这样使用的:

 a = b /100#

我不明白#after 的意义是100什么?

4

1 回答 1

94

Double 的类型声明字符是数字符号 (#)。也称为哈希

其他类型声明字符是:

  1. 整数 %
  2. 长 &
  3. 货币 @
  4. 单身的 !
  5. 双倍的 #
  6. 字符串 $

不明白#这里的意义。

这意味着在计算表达式时,类型声明字符前面的数字被视为特定数据类型而不是 Variant。

看这个例子,基本是一样的。

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

问题:其中一个会失败。你能猜出是哪一个吗?

Ans : 第一个程序Sub Sample1()将失败。

原因

Sample2,当你做b * 100#计算的结果将是类型Double。由于它在 Double 的范围内,所以计算成功并将结果分配给 variable a

现在Sample1,当您进行计算时b * 100,计算结果将是类型Integer,因为两个操作数都是整数类型。但是计算结果超出了整数存储的限制。结果会出错。

希望能帮助到你 :)

于 2012-06-05T03:07:09.353 回答