Excel技巧大全之删除过滤后的数据。听起来很简单是不是

我正在尝试根据条件过滤一组行并删除过滤后的行。我已经尝试了在互联网上找到的每一个解决方案,但没有任何运气。

我认为它失败的几个原因是,因为我的数据从第 7 行开始,有时过滤行中没有任何内容。我当前的代码看起来像这样。

WB.Worksheets(LastSheet).Range("A" & HeaderOffset + 1 & ":Z" & LastSourceRow).AutoFilter field:=2, Criteria1:="=Deposit*"
                    WB.Worksheets(LastSheet).Range("A" & HeaderOffset + 2 & ":Z" & LastSourceRow).Delete Shift:=xlUp
                    WB.Worksheets(LastSheet).Range("A" & HeaderOffset + 1 & ":Z" & LastSourceRow).AutoFilter   'Deactivate

恼人的是,这会删除所有行。

我尝试使用SpecialCells(xlCellTypeVisible),但在没有筛选行时失败

WB.Worksheets(LastSheet).Range("A" & HeaderOffset + 2 & ":Z" & LR).SpecialCells(xlCellTypeVisible)

解决方案

假设从 A&HeaderOffset+1 到 A&LastSourceRow 的所有行都已填充

你可能感兴趣的:(Excel技能大全,excel)