私にはのどちらかを実行するコードがありますか、またはです。 、特定のセルの値に基づいて行を削除し、その特定の列のセルの下にある空の行を削除するマクロ
- が列「S」で「NONE」を検索していないと、その行を削除し、それがその行の次の人口のセルに実行されるまで
- は、それ以下のすべての行を削除します。私は、コードを作成しようとしています列 "S"の残りの部分をさらに「無」に検索し続けます。
ここでは、私がこれまで持っているものですが、既存のコードへの最も簡単な変更がある.Rows(i).Delete
前または後に、別のIF
を追加する問題であるか、それは
Sub Helmetpractice()
Const TEST_COLUMN As String = "S"
Dim Lastrow As Long
Dim i As Long
Application.ScreenUpdating = False
With ActiveSheet
Lastrow = .Cells(.Rows.Count, TEST_COLUMN).End(xlUp).Row
For i = Lastrow To 1 Step -1
If Cells(i, TEST_COLUMN).Value2 Like "NONE" Then
'this is where I am having trouble for the blank row delete
.Rows(i).Delete
End If
Next i
End With
Application.ScreenUpdating = True
End Sub
を使用することができますが、いくつかのサンプルデータとマクロが実行された後、データがどのように見えるかの例を投稿してもらえますか? –
データに空白行が散在していますか?あなたがループすると、 "NONE"と空白行の両方をチェックすることができず、いずれの場合も削除できませんでしたか? If Application.CountA(.Cells(i、TEST_COLUMN).EntireRow)= 0を使用することができます。次に、空の行を確認します。 – rryanp
スプレッドシートのスニペットの画像を投稿したばかりです。本質的には、「NONE」行自体を削除することを目指し、列Sの次の入力セルに入るまで下の空白行を削除し、最後まで続行します。 "HELMET"の下の空白の行を残し、 "NONE"の下にある空の行のみを削除します。最後に、「ヘルメット」とその下に空白がある灰色のセルだけが残ります。実際のスプレッドシートの行数は1000です。 –