我有一个包含大约500个数据条目的列表,其中一些在单元格中具有相同编号的不同文本。我需要用" 00000"找到所有这些行。在其中并删除它们。 我需要计算" test2" startet no working(18:23)并且需要知道它再次工作需要多长时间(18:30)并且error00000消息正在搞乱我的公式,所以我需要删除其中包含error00000的所有行。错误信息永远不会相同,但" 000000"在它总是一样的。
我不知道如何使用VBA代码找到它,因为我只能在单元格中找到数字。数据条目可以每周更改,因此它应该与VBA一起使用。
我有一些代码,但它的在线工作时,单独的数字在单元格而不是像Error message 00000
这样的句子中,文本总是在变化,数字保持不变。
我在单元格中删除仅包含数字的行的代码
Private Sub CommandButton1_Click()
Dim lRow As Long
Dim iCntr As Long
lRow = 1000
For iCntr = lRow To 1 Step -1
If Cells(iCntr, 5).Value = "1008" Then
Rows(iCntr).Delete
End If
Next
End Sub
03.09.2015 18:30 test2 EXAMPLETEXT blablablalb error000002
03.09.2015 18:25 test2 EXAMPLETEXT blablablalb error000000
03.09.2015 18:23 test2 EXAMPLETEXT blablablalb error000002
03.09.2015 18:30 test1 EXAMPLETEXT blablablalb error000002
03.09.2015 18:25 test1 EXAMPLETEXT blablablalb error000000
03.09.2015 18:23 test1 EXAMPLETEXT blablablalb error000002
答案 0 :(得分:0)
尝试运行以下代码以删除已过滤的行。在运行代码之前,请确保输入变量strSearch
,strSearchColName
和strSheetName
的值。
Sub Delete_Rows_Condtionally()
Dim lastRow As Long
Dim currentRow As Long
Dim cellText As String
Dim strSearch As String
Dim strSearchColName As String
strSearch = "000000"
strSearchColName = "E"
strSheetName = "tabelle2"
With ThisWorkbook.Worksheets(strSheetName)
'Get last row
lastRow = .Range(strSearchColName & .Rows.Count).End(xlUp).Row
currentRow = lastRow
Do While currentRow >= 1
cellText = .Range(strSearchColName & currentRow).Text
If (InStr(1, cellText, strSearch)) Then
.Range(strSearchColName & currentRow).EntireRow.Delete
Else
currentRow = currentRow - 1
End If
Loop
End With
End Sub