1

特定の列、そのコンテンツ、およびコメントのゼロを削除できるようにするコードをフォーマットするのに役立つコードを別の投稿から取得しました。ただし、コードは最初のセル (0 ではなく、ゼロを含まない) も削除しています。コードは次のとおりです。

Sub Testme()
    Dim rng1 As Range
Set rng1 = Columns(2)
With rng1
    .AutoFilter 1, "0"
    With rng1.Offset
         .ClearContents
         .ClearComments
    End With
End With
End Sub

このリスト:

6.28    91.4
6.28    95.5
6.28    96.2
6.28    86.9
6.28    0
6.28    100.7
6.28    90.1

なる:

6.28    
6.28    95.5
6.28    96.2
6.28    86.9
6.28    
6.28    100.7
6.28    90.1

ゼロを含まない最初の行を削除しないようにする方法を教えてください。

4

2 に答える 2

1

オートフィルターする必要はありません。検索と置換を行うことができます:

Columns(2).Replace What:="0", Replacement:="", LookAt:=xlWhole
于 2013-07-11T15:01:58.687 に答える
0

rng1 の定義は、列全体を選択しています。したがって、クリアのオフセットを行うと、フィルター処理された列 C がすべて消去されます。

このコードはあなたが望むことをします:

Sub Testme()
    Dim rng1 As Range
    Set rng1 = Sheet1.UsedRange 
    With rng1
       .AutoFilter 1, "0"
        With rng1.Offset(1, 0)
            .ClearContents
            .ClearComments
        End With
    End With
End Sub
于 2013-07-11T15:11:37.897 に答える