[英]Deleting an entire row based on the value in a cell with a loop
我正在嘗試編寫一個宏/vba,它將檢查我的 excel 表中的第 12 - 451 行。 如果列“H”(在任何所述行中)包含零值,則應刪除該行。
Excel 將用於上傳程序,並且“H”列中不能有任何零值
我記錄了一個宏,它用所需的數據填充第 12 - 451 行(“A”到“H”列),但是我可以添加到宏(最后)的一段代碼有問題,這將循環返回並刪除“H”列中值為零的任何行。
我試圖記錄“刪除”宏,但無法弄清楚如何使代碼循環遍歷每一行並刪除具有零值的那些。
如果需要更多信息,請告訴我。
試試這個:
Sub HKiller()
For i = 451 To 12 Step -1
If Cells(i, "H").Value = 0 Then Rows(i).Delete
Next i
End Sub
請注意,我們從下到上工作以避免索引問題。
我正在嘗試相同的操作,即,如果兩列單元格中的任何一列具有“0”,則刪除列然后刪除該行。 我已經修改了上面的代碼。 請建議。
Sub test()
Dim Lastrow As Long, i As Long
'LastColumn = .Cells(1, .Columns.Count).End(xlToLeft).Column
With ThisWorkbook.Worksheets("Sheet1")
Lastrow = .Cells(.Rows.Count, "A").End(xlUp).Row
For i = 0 To Lastrow Step 1
If Cells(i, "E" Or "F").Value = 0 Then Rows(i).Delete
Lastrow = .Cells(.Rows.Count, "A").End(xlUp).Row
Next i
End With
End Sub
謝謝
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.