我有一个解决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
我有49,606行数据:
如何避免出现此错误?
答案 0 :(得分:0)
您是否声明了变量? Soudns就像一个整数溢出xrow。
添加
Dim xrow as long
在程序开始时。
答案 1 :(得分:0)
从错误中,我认为问题出在Worksheets(6)
部分。
你有7张工作单吗?记住:计数从0开始!不是1!
如果是这种情况,请将索引更改为7而不是6:
Worksheets(7).Cells(xrow, xcolumn).Value