IsError error on Search
Thanks Dave, this works great!
Marc
"Dave Peterson" wrote:
I don't know what I was thinking in that other post. For some reason, I was
thinking that you were using application.match() instead of .find. And I mixed
up everything.
Sorry.
Dim FoundCell as range
Do Until Counter 38
ACCTNAME (Counter) ' passes Acct name back to sub
with activesheet.Columns("B:B")
set foundcell = .cells.find(what:=Acct, _
After:=.cells(.cells.count), _
LookIn:=xlFormulas, _
LookAt:=xlPart, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=True)
end with
if foundcell is nothing then
'not found
else
'was found
end if
.....
MFINE wrote:
Didn't quite work. Still get the object error
"Run-time error 91"
Object variable or With block variable not set
"Dave Peterson" wrote:
I'd use:
Dim res as variant
Do Until Counter 38
ACCTNAME (Counter) ' passes Acct name back to sub
with activesheet.Columns("B:B")
res = .cells.find(what:=Acct, _
After:=.cells(.cells.count), _
LookIn:=xlFormulas, _
LookAt:=xlPart, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=True)
if iserror(res) then
'not found
else
'was found
end if
....
MFINE wrote:
Hi, I am using the IsError function nested in an If statement to try and get
the macro to skip over some steps if the search comes up empty. I pass the
search variable (Acct) from a function based on the number of the loop
(counter). Works fine if the search has a positive result, but gets an
object error if search is negative. Here is the code:
Do Until Counter 38
ACCTNAME (Counter) ' passes Acct name back to sub
Columns("B:B").Select
If IsError(Selection.Find(What:=Acct, After:=ActiveCell,
LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=True, SearchFormat:=False).Activate) Then
'skip
Else.......
Any help will be appreciated.
Thanks
Marc
--
Dave Peterson
--
Dave Peterson
|