我的宏只删除excel数据,不删除行,我想把行也删除。

问题描述 投票:0回答:1

我有一个宏,它只删除数据而不是行。例如,我有600 000条记录,在宏后,它留下了15 000条记录,但我的excel表显示600 000条记录 - 15 000条记录的数据和其余的空,但我希望它只显示15 000条记录。

所有的空行都应该被删除。

宏。

Sub DeleteRecord()
Dim MySheet As String
Dim cnt As Long
MySheet = ActiveSheet.Name
Cells(1, 1).CurrentRegion.AutoFilter Field:=33, Criteria1:= _
    ">=-.09", Operator:=xlAnd, Criteria2:="<=.01"
cnt = Worksheets(MySheet).Cells.SpecialCells(xlCellTypeLastCell).Row
If cnt > 3 Then Range("A2", ActiveCell.SpecialCells(xlLastCell)).Delete
Cells(1, 1).CurrentRegion.AutoFilter Field:=33
End Sub
excel-vba
1个回答
0
投票

你可以试试下面的代码。删除所有选定的行。

  Sub DeleteRecord()
        Dim MySheet As String
        Dim cnt As Long
        MySheet = ActiveSheet.Name
        Cells(1, 1).CurrentRegion.AutoFilter Field:=33, Criteria1:= _
            ">=-.09", Operator:=xlAnd, Criteria2:="<=.01"


        cnt = Worksheets(MySheet).Cells.SpecialCells(xlCellTypeLastCell).Row
        If cnt > 3 Then Range("A2", ActiveCell.SpecialCells(xlLastCell)).Select
        Selection.EntireRow.Delete
        End If
        Cells(1, 1).CurrentRegion.AutoFilter Field:=33
    End Sub
© www.soinside.com 2019 - 2024. All rights reserved.