问题描述
在微不足道(imo)上收到“ 运行时错误代码'6':溢出”消息。
我在下面的代码中遇到了奇怪的问题:
Sub StageSetup()
Dim rLastDaTarow As Range
Dim lCount As Long: lCount = 0
Dim lDelta As Long: lDelta = 0
1 With Worksheets("Analyzer")
2 Set rLastDaTarow = .Range("A2").End(xlDown)
3 lCount = (rLastDaTarow.Row - 2) / 10
4 lDelta = (rLastDaTarow.Row - 2)
5 lCount = lDelta / 10
6 End With
End Sub
在调试模式下,问题发生在上面的第5行,这很奇怪,因为这是一个简单的长除法。
注意:
- 在事实之后,我在上面添加了第3行,只是为了查看一行完成后会发生什么。可以,但是我希望它以第5行中显示的形式工作,因为此代码的将来mod将涉及在除法发生之前对
lCount
进行的累加累积。 -
rLastDaTarow.Row
的价值为2510
,因此恰好是10
的均分值(显而易见)。*
我可以使用循环来模拟除法,但是当简单除法就足够了时,这样做有什么意义呢?
可以看出,lCount
和lDelta
均为Long类型。因此,这本来应该是微不足道的,因为这里不应该进行任何形式的类型转换。
我尝试使用CLng
以及&
来转换变量和文字(如我在某些线程中所见,但认为这仅适用于非十进制基本表示形式)各种组合都无济于事。我也对第4行进行了一些强制转换,
有人知道这里可能发生什么情况吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)