相关疑难解决方法(0)

对VBA中Long数据类型的误解

从VBA中的溢出错误的帮助,有以下示例:

Dim x As Long
x = 2000 * 365 ' gives an error

Dim x As Long
x = CLng(2000) * 365 ' fine
Run Code Online (Sandbox Code Playgroud)

我原以为,因为Long数据类型应该能够容纳32位数字,所以第一个例子可以正常工作.

我问这个是因为我有一些像这样的代码:

Dim Price as Long
Price = CLng(AnnualCost * Months / 12)
Run Code Online (Sandbox Code Playgroud)

当AnnualCost为5000且Months为12时,这会引发溢出错误.

我错过了什么?

vba

3
推荐指数
1
解决办法
2万
查看次数

标签 统计

vba ×1