在 VBA 中添加数字时是否有最大行长?例如在 MS Access 中:
Dim L As Long
' this works
L = 2696 + 2630 + 2860 + 2860 + 2860 + 2860 + 2795 + 2795 + 2630 + 2630 + 2630 + 263
' this gives an Overflow error
L = 2696 + 2630 + 2860 + 2860 + 2860 + 2860 + 2795 + 2795 + 2630 + 2630 + 2630 + 2630
Debug.Print L
我从未见过这方面的记录。此外,它不会在 Visual Studio 中的 C# 中引发溢出错误。
最佳答案
type of an integer literal是一个整数
(最大+32767):
?typename(2696)
Integer
nInteger
s相加的结果也是Integer
类型:
?typename(2696 + 2630)
Integer
一旦累积超过 Integer
的界限,您将得到一个溢出异常,您分配给的变量是 Long
并不重要,因为在赋值之前进行累加。
解决此问题的方法是将附加值中的一个值设为 Long
,您可以使用 &
类型后缀轻松做到这一点:
L = 2696& + 2630 + ..
关于vba - VBA中添加行的最大长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54114272/