有下面的语句, 在Sheet A中的D列去找含有abc的单元格,如果找到了,则对该单元格做条件判断,如果不满足条件则查找下一个含有abc的单元格。
在Sheet A中的D列中有两个单元格含有abc,第一次查找顺利结束,但是每当执行完findnext过后,c1就变成nothing, 而不再进行查找,想请大家帮忙找下问题所在。 谢谢
On Error Resume Next
With Worksheets("A").Range("D:D")
Set c1 = .find("abc", LookIn:=xlValues)
If Not c1 Is Nothing Then
firstAddress = c1.Address
Do
If criterior_Check(currentRow, c1.Row, conType) Then
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Else
Set c1 = .FindNext(c1)
End If
Loop While Not c1 Is Nothing And c1.Address <> firstAddress
Else
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Exit Sub
End If
End With
å¦ææ¾å°äºï¼å对该åå æ ¼åæ¡ä»¶å¤æï¼å¦æä¸æ»¡è¶³æ¡ä»¶åæ¥æ¾ä¸ä¸ä¸ªå«æabcçåå æ ¼ã
å¦ææ¾å°äºï¼å对该åå æ ¼åæ¡ä»¶å¤æï¼åå®æ¡ä»¶å¤æä¹éè¦åæ¥æ¾ä¸ä¸ä¸ªï¼è·ä½ çè¿ä¸ªæ¡ä»¶æ¯æ²¡æå ³ç³»çãã
æ以åºè¯¥æ¯ï¼
Do
If criterior_Check(currentRow, c1.Row, conType) Then
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Set c1 = .FindNext(c1)
Else
Set c1 = .FindNext(c1)
End If
Loop While Not c1 Is Nothing And c1.Address <> firstAddress
2个问题
Set c1 = .FindNext(c1) 改成 Set c1 = .FindNext(After:=c1)
Loop While Not c1 Is Nothing And c1.Address <> firstAddress
改成 Loop Until (c1 Is Nothing) Or (c1.Address=firstAddress)
没用啊~执行完findnext过后还是nothing
追答表发给我测试下+Q191180776