2017-08-04 169 views
0

こんにちは、これは私の初めての質問です。ここはほとんどの場合かなり基本的ですが、マクロを初めてコーディングするときです。私は、データ値の広範なリストをExcelに広げることに取り組んでおり、特定の金額ですべての行を削除する必要があります。この部分は完全に動作しています。しかし、私は空白のセルを持っているヘッダーが削除され続けるグループ分けを分離するのと同じ行にある私はこれらを保持する必要があります。 forループで空のセルをスキップする方法はありますか?ここでループ用のVBAで空白セルをスキップ

は私のコードです:

Private Sub CommandButton1_Click() 

    Dim LastRow As Long, n As Long 

    For n = 1000 To 1 Step -1 

     If Cells(n, 9).Value < 1.01 Then Cells(n, 9).EntireRow.Delete 

    Next n 

End Sub 
+0

します。Private Sub CommandButton1_Click()限り 薄暗いLASTROW、N N = 1000であれば 1つのステップ-1 個の細胞(N、9)場合.Value <1.01 Then Cells(n、9).EntireRow.Delete 次のn End Sub – Laur3704

+1

[編集](https://stackoverflow.com/posts/45511392/edit)ボタンを使用してコードをボディに追加してください問題のまた、質問で適切に字下げ/書式設定されていることを確認してください:) –

+0

'If'文を別の' If'文で囲んで空のセルをテストします。たとえば、IsEmpty関数を使用するか、値を '' "文字列)。 –

答えて

3

は、セルが空白でないことを確認するために、あなたのif文で条件を追加します。このように:

If Len(Cells(n,9)) and Cells(n, 9).Value < 1.01 Then Cells(n, 9).EntireRow.Delete 
+0

ありがとう!それは完璧に働いた – Laur3704

1

検討:

Private Sub CommandButton1_Click() 

    Dim LastRow As Long, n As Long 

    For n = 1000 To 1 Step -1 

     If Cells(n, 9).Value < 1.01 And Cells(n, 9).Value <> "" Then Cells(n, 9).EntireRow.Delete 

    Next n 

End Sub 
関連する問題