2016-09-16 16 views
-1

列Nに0または正の値を含むすべての行(行全体)を削除する必要があります。行1には列ヘッダー(すべてのテキスト)があります。この行は、現在のマクロで削除されます。私はこの行がマクロ効果の範囲に含まれないようにするか、何とかロックする必要があります。行数は動的なので、マクロを実行する固定範囲を指定することはできません。セルに特定の値が含まれていても効果のない行1を削除する方法

Sub Step20() 


Application.ScreenUpdating = False 
Application.Calculation = xlCalculationManual 
Dim i As Long 
For i = Range("N" & Rows.Count).End(xlUp).Row To 1 Step -1 
    If (Range("N" & i).Value >= 0) Then 
     Range("N" & i).EntireRow.Delete 
    End If 
Next i 
Application.Calculation = xlCalculationAutomatic 
Application.ScreenUpdating = True 


End Sub 

ありがとうございます!

+1

forループの 'to 1 'を' to 2'に変更してください。それから、行1を見ないでしょう。 –

+0

@ScottCranerああ!分かりやすい - それは完璧に働いた。それを回答として提出したいのであれば、私はそのようにマークします。 – RugsKid

答えて

1

最後の行から最初の行までのコードを、ドキュメント全体として実行するように設定しています。行2まで実行するように変更するとどうなりますか?あなたはあなたのヘッダーが行1にあることを確認する必要があります!

は、ここで私はあなたのコードに変更します何:あなたはまだ最初の行を保持し、

For i = Range("N" & Rows.Count).End(xlUp).Row To 2 Step -1 

この方法では、あなたの仕事を得ます。

関連する問題