删除过滤的数据VBA

我有一个过滤数据的macros,我想删除列中的数据。 我有(下面)的代码这样做,但它删除列中的所有数据。 我需要删除的数据,所以单元格仍然是空白不删除。

Range("A1:AC1").AutoFilter Range("A1:AC1").AutoFilter Field:=17, Criteria1:="0.00", Operator:=xlFilterValues Range("Q4:Q1000").SpecialCells(xlCellTypeVisible).Delete 

更换:

 Range("Q4:Q1000").SpecialCells(xlCellTypeVisible).Delete 

有:

 Range("Q4:Q1000").SpecialCells(xlCellTypeVisible).Clear