运行时错误“1004”不一致 - 范围类的删除方法失败

时间:2018-04-11 10:23:20

标签: vba excel-vba excel

我在excel中编写了一些VBA来迭代一组相对较大的数据,以便执行一些基本的格式化和整理。代码以前工作,并且当我使用断点并逐步执行它时仍然有效。但是,当我没有单步执行它并让代码自行运行时,电子表格就会变得无法响应。一旦我按下了几次逃逸,我得到运行时1004错误(见标题),并且相关的行被高亮显示。

我想重申一下,当我在违规行上设置一个断点并逐步执行它时,它可以正常工作并删除该行。此外,当我在一个小得多的数据集中测试语法时,它完美地运行,因此这与语法无关。

任何帮助将不胜感激,因为我很难过。这是代码:

Cells(iRow, 4).EntireRow.Delete 

违规行是:

{{1}}

工作表无法响应,只有当我按几次逃生时才会显示运行时错误。

1 个答案:

答案 0 :(得分:1)

没有反应并不表示Excel崩溃了。逐个删除行只是非常缓慢。

您可以使用

application.statusbar=cstr(iRow)
DoEvents

查看您的进度并保持Excel响应。

如果它会慢下来,我建议你在行中设置一些值来删除,按该值排序然后将它们全部删除。