代码正在遍历相当大的数据(1000行乘20列的列),并删除单元格中没有错误但当前需要20分钟才能执行的行。 寻找一种方法来消除偏移量并在代码中进行选择,从而加快该过程。
我曾尝试在代码前后关闭/打开自动计算功能,但这并没有明显影响运行时间。屏幕更新已关闭。
Range("A6").Select
Do Until IsEmpty(ActiveCell)
If IsError(ActiveCell) Then
ActiveCell.Offset(1, 0).Select
Else
ActiveCell.EntireRow.Delete
End If
Loop
保留行,其中范围A中的单元格为N / A(IsError)。 按预期运行,但需要花费整整20分钟的时间。
感谢您的帮助。
答案 0 :(得分:3)
SpecialCells可以快速查找所有返回布尔值,数字或文本的公式,同时排除错误。
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'END;
END CASE;
END' at line 8
答案 1 :(得分:0)
i=6
With ActiveSheet
Do Until IsEmpty(.cells(i,1))
If IsError(.cells(i,1)) Then
i=i+1
Else
.Row(i).Delete
End If
Loop
End with