我在excel中编写了一些VBA来迭代一组相对较大的数据,以便执行一些基本的格式化和整理。代码以前工作,并且当我使用断点并逐步执行它时仍然有效。但是,当我没有单步执行它并让代码自行运行时,电子表格就会变得无法响应。一旦我按下了几次逃逸,我得到运行时1004错误(见标题),并且相关的行被高亮显示。
我想重申一下,当我在违规行上设置一个断点并逐步执行它时,它可以正常工作并删除该行。此外,当我在一个小得多的数据集中测试语法时,它完美地运行,因此这与语法无关。
任何帮助将不胜感激,因为我很难过。这是代码:
Cells(iRow, 4).EntireRow.Delete
违规行是:
{{1}}
工作表无法响应,只有当我按几次逃生时才会显示运行时错误。
答案 0 :(得分:1)
没有反应并不表示Excel崩溃了。逐个删除行只是非常缓慢。
您可以使用
application.statusbar=cstr(iRow)
DoEvents
查看您的进度并保持Excel响应。
如果它会慢下来,我建议你在行中设置一些值来删除,按该值排序然后将它们全部删除。