|
本帖最后由 跑跑2014 于 2014-4-14 14:08 编辑
AF列的数值是有规律的,都是在D列各工地汇总数值那行,也就是说AF列的数值见零,就把相对应的整个工地全部内容删除。
这个希望 大侠可用代码帮我写出。一下子把为零值的工地全部删除掉。
- Sub test()
- Dim arr, i&
- Dim rg As Range
- Dim lRow&
- arr = Range("af1:ag" & Cells(Rows.Count, "af").End(xlUp).Row).Value
- For i = UBound(arr) To 2 Step -1
- If arr(i, 1) = 0 And Not IsEmpty(arr(i, 1)) Then
- lRow = Cells(i, "af").End(xlUp).Row
- If lRow = 1 Then
- lRow = 2
- Else
- lRow = lRow + 3
- End If
- If rg Is Nothing Then
- Set rg = Rows(i + 2 & ":" & lRow)
- Else
- Set rg = Union(rg, Rows(i + 2 & ":" & lRow))
- End If
- End If
- Next
- If rg Is Nothing Then Exit Sub
- Application.ScreenUpdating = False
- Application.DisplayAlerts = False
- rg.Delete
- Application.DisplayAlerts = True
- Application.ScreenUpdating = True
- MsgBox "删除完成"
- End Sub
复制代码
|
|