我是VBA的新手,我需要一些帮助来处理我的数据。
如果列中包含的每个值都等于零,则删除该列
目前为止,我有这样一条消息:
Sub delete()
Dim FinalCol As Integer
FinalCol = Range("A1").End(xlToRight).Column
For i = FinalCol To 1 Step -1
If Application.WorksheetFunction.Sum(Columns(i)) = 0 Then
Columns(i).delete
End If
Next i
End Sub
问题是,在某些列中,和等于零,但它们并不只包含零,所以我想保留它们。
希望你们能帮我。
- 谢谢-谢谢
2条答案
按热度按时间mv1qrgav1#
使用
CountIfs
:最好使用
Union
并在循环后删除,而不是在循环内删除:另一个选择是使用
CountIfs
和CountA
:这两个选项的逻辑是:
1.如果列不包含任何非零元素,则删除该列。
1.如果零的计数=列中非空元素的计数,则删除该列。
x6yk4ghg2#
所有只包含数字零的单元格