我正在尝试查找单元格值“详细信息”并删除该行及其下面的 3 行。
我当前的代码可以工作,但是一旦不再有任何带有“详细信息”的单元格,我就会收到错误框,要求我结束宏或调试。
如何修复当前代码并消除弹出的错误消息框。
我当前的代码如下。
Dim StartRange As String
Dim EndRange As String
For Each Cell In ActiveSheet.Range("A1:A1000")
Cells.Find(What:="Details").Select
StartRange = ActiveCell.Address
Selection.Offset(3, 75).Select
EndRange = ActiveCell.Address
ActiveSheet.Range(StartRange & ":" & EndRange).Select
Selection.EntireRow.Delete
Next Cell
最佳答案
试试这个 - 注意,最好使用您的 Workbook
和 Worksheet
名称完全限定 Range
(即 Workbooks("MyWorkbook ").Worksheets("MyWorksheet").Range()
.
Option Compare Text
Sub Test()
Dim i As Long
For i = 10000 To 1 Step -1
If Range("B" & i).Value = "details" Then
Range("B" & i & ":B" & i + 3).EntireRow.Delete
ElseIf Range("V" & i).Value = "pending renewal" Then
Range("V" & i & ":V" & i + 7).EntireRow.Delete
End If
Next i
End Sub
关于VBA 代码在完成后停止运行当前代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52173035/