如果没有找到错误,我希望程序输出一条消息。
Sub casesVsQueue()
Dim loop_counter As Integer
Dim colD_counter As Integer
loop_counter = 1
colD_counter = 2
Do Until IsEmpty(Sheets("Sheet1").Range("A" & loop_counter).Value)
If IsError(Sheets("Sheet1").Range("C" & loop_counter).Value) Then
Sheets("Sheet1").Range("D" & colD_counter).Value = Sheets("Sheet1").Range("A" & loop_counter).Value
colD_counter = colD_counter + 1
End If
loop_counter = loop_counter + 1
Loop
End Sub
答案 0 :(得分:1)
在你的循环结束后,在关闭你的sub之前添加:
Loop
If colD_counter = 2 Then MsgBox "Everything is fine"
End Sub
基本上因为colD_counter
'计数'错误,如果它在循环期间没有变化,则保持= 2,那么你有msgbox表示没有错误出现。
你可以保持vb的其余部分不受影响。我刚试了一下它似乎工作正常。
答案 1 :(得分:0)
这是你在找什么?
Sub casesVsQueue()
Dim loop_counter As Integer
Dim colD_counter As Integer
Dim lngLastRow As Long
loop_counter = 1
colD_counter = 2
With ThisWorkbook.Worksheets("Sheet1")
lngLastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
For loop_counter = 1 To lngLastRow
If VarType(.Cells(loop_counter, "C").Value) = vbError Or .Cells(loop_counter, "C").Value = vbNullString Then
.Cells(colD_counter, "D").Value = .Cells(loop_counter, "A").Value
colD_counter = colD_counter + 1
End If
Next loop_counter
End With
End Sub
如果您有任何问题或疑问,请与我们联系。