|
本帖最后由 victory610 于 2014-3-15 00:29 编辑
由于特殊的要求,需要将汇总和为零的分类行删除掉,只保留汇总和不为零的行。
请VBA大神帮忙。
非常感谢。
- Sub test()
- Dim d, k%, tmp
- Set d = CreateObject("scripting.dictionary")
- arr = Range("a1:b" & Cells(Rows.Count, 1).End(3).Row)
- For k = 3 To UBound(arr)
- If Not d.exists(arr(k, 1)) Then
- d(arr(k, 1)) = arr(k, 2)
- Else
- d(arr(k, 1)) = d(arr(k, 1)) + arr(k, 2)
- End If
- Next
- tmp1 = d.items
- tmp2 = d.keys
- For k = d.Count - 1 To 0 Step -1
- If tmp1(k) = 0 Then
- arr = Range("a1:b" & Cells(Rows.Count, 1).End(3).Row)
- For i = UBound(arr) To 3 Step -1
- sss = d(arr(k, 1))
- If arr(i, 1) = tmp2(k) Then Cells(i, 2).EntireRow.Delete
- Next i
- End If
- Next k
- End Sub
复制代码
|
|