用VBA代码删除EXCEL行实例
你的位置:星辉注册 > 业务范围 > 用VBA代码删除EXCEL行实例
用VBA代码删除EXCEL行实例
发布日期:2024-07-22 10:06    点击次数:166

工作中经常要删除EXCEL行或者列,要删除的数据量比较少的情况下,可以直接手动删除或者筛选后手动删除,要是数据量比较多的话就比较费手了,偷懒使人进步!下面通过删除EXCEL特定行来实例说明:

图片

如图,要求删除每个仓差异都为0的数据,当数据量比较大,条件又比较复杂的情况下,手动就比较尴尬了.我们用两种VBA代码方法来实现:

方法一:

Sub 删除没有差异数据() Dim i, j As Integer Application.ScreenUpdating = False j = Range('A65536').End(xlUp).Row For i = j To 6 Step -1 If Range('H' & i) = 0 And Range('K' & i) = 0 And Range('N' & i) = 0 Then Range('H' & i).Select Selection.EntireRow.Delete Shift:=xlUp End If Next Application.ScreenUpdating = TrueEnd Sub

图片

方法二:

Sub 删除没有差异数据数组方法()    Dim arr, brr(), i, j, k, z    k = Range('N65536').End(xlUp).Row    arr = Range('A6:N' & k)    ReDim brr(1 To UBound(arr, 1), 1 To UBound(arr, 2))    For i = 1 To UBound(arr)        If arr(i, 8) <> 0 Or arr(i, 11) <> 0 Or arr(i, 14) <> 0 Then            j = j + 1            For z = 1 To 14                brr(j, z) = arr(i, z)                            Next        End If    Next    Range('A6:N' & k).ClearContents    Range('A6').Resize(j, 14) = brrEnd Sub

图片

结果如下图:

图片

第一种方法是平时比较常用的,但是效率比较低,要特别注意,最好倒着删行,这个大家可以想想为什么?然后在下面留言,

第二种方法要求VBA基础稍微好点,效率也比较高,也有要注意的地方,比如0开头的文本数字写入到单元格后的问题等.

因为没有什么流量,好久没有写头条了,希望有需要的朋友看过留言,也算有点意义.

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。

上一篇:7月9日基金净值:易方达信息产业混合A最新净值2.41,涨4.01%
下一篇:给1000人发送不同邮件,用VBA程序一键分发,十秒搞定