[英]Excel VBA error overflow
我有一個程序可以解決3D包裝問題。 當我只用100行數據運行該程序時,我的代碼可以工作,但是當我使用所有數據時,出現錯誤:
運行時錯誤“ 6”:
溢出
這是我的代碼:
If rotationtype = 2 Then
Do While Worksheets(6).Cells(xrow, xcolumn).Value <> ""
' 0,1 > inputan
If Worksheets(6).Cells(xrow, xcolumn).Offset(0, 1).Value > Worksheets(6).Cells(xrow, xcolumn).Value Then
Worksheets(6).Cells(xrow, xcolumn).Offset(0, 3).Value = Worksheets(6).Cells(xrow, xcolumn).Offset(0, 1).Value
Worksheets(6).Cells(xrow, xcolumn).Offset(0, 4).Value = Worksheets(6).Cells(xrow, xcolumn).Value
Worksheets(6).Cells(xrow, xcolumn).Offset(0, 5).Value = Worksheets(6).Cells(xrow, xcolumn).Offset(0, 2).Value
Else ' 0,1 < inputan
Worksheets(6).Cells(xrow, xcolumn).Offset(0, 3).Value = Worksheets(6).Cells(xrow, xcolumn).Value
Worksheets(6).Cells(xrow, xcolumn).Offset(0, 4).Value = Worksheets(6).Cells(xrow, xcolumn).Offset(0, 1).Value
Worksheets(6).Cells(xrow, xcolumn).Offset(0, 5).Value = Worksheets(6).Cells(xrow, xcolumn).Offset(0, 2).Value
End If
xrow = xrow + 1
Loop
Toplamkutusayisi = xrow - 2
xrow = 2
Else
我有49606行數據:
如何避免出現此錯誤?
您是否聲明了變量? Soudns就像xrow的整數溢出一樣。
只需添加
Dim xrow as long
在您的程序開始時。
從錯誤中,我認為問題出在Worksheets(6)
部分中。
您有7個工作表嗎? 請記住:從0開始計數! 不等於1!
在這種情況下,請將索引更改為7而不是6:
Worksheets(7).Cells(xrow, xcolumn).Value
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.