【发布时间】:2016-10-24 22:36:17
【问题描述】:
我正在根据 P 列中的值删除行。 P 列中的单元格有一个 if 语句:IF(K
如果 P 列的值为 0,则需要删除该行。 我正在使用以下宏,它可以工作但需要很长时间。 我希望能够处理大约 10000 行。
如果我能对加快此代码的速度提出一些建议,我们将不胜感激。
[我曾尝试使用这个 if 语句:IF(K
Sub RemoveBlankRows()
Application.ScreenUpdating = False
'PURPOSE: Deletes any row with 0 cells located inside P
'Reference: www.TheSpreadsheetGuru.com
Dim rng As Range
Dim blankrng As Range
Dim cell As Range
'Store blank cells inside a variable
'On Error GoTo NoBlanksFound
Set rng = Range("P2:P30000") '.SpecialCells(xlCellTypeBlanks)
'On Error GoTo 0
For Each cell In rng
If cell.Value = 0 Then
cell.EntireRow.Delete
'Value = ""
End If
Next
Application.ScreenUpdating = True
End Sub
【问题讨论】:
-
排序呢?您能否以将
0单元格组合在一起的方式对表格/数据进行排序,然后使用0抓取第一行和最后一行,然后删除范围?