View Single Post
  #6   Report Post  
Posted to microsoft.public.excel.programming
BW BW is offline
external usenet poster
 
Posts: 49
Default Can't trap error when checking for keys not in Collection

Strange,

I copied your code and single stepped in VBA for excel 2003 SP1.

Same results as before.... code does NOT jump to errH when col.Remove s,
where s = "G".


"Peter T" wrote:

I cannot recreate your problem in XL2K. Others appear to so perhaps it's
been introduced in later versions. Following worked as expected for me.

Sub test()
Dim col As New Collection
For i = 1 To 3
col.Add i * 10, Chr(i + 64)
Next

On Error GoTo errH
s = "B"
col.Remove s
s = "G"
col.Remove s ' goes to errh

Set col = Nothing
Exit Sub
errH:
Debug.Print s, Err.Number; Err.Description
' G 5 Invalid procedure call or argument
Resume Next
End Sub

Regards,
Peter T

"BW" wrote in message
...
Hello,

For some reason when i try to remove a key from a Collection where that

key
hasn't been added yet, i cannot trap the error when it occurs within an

error
handler. All i get is a error dialog box that pops up that says "Invalid
procedure call or argument"

the code snippet is as follows:

On Error GoTo ERR_HANDLER
myCollection.Remove ("key1")
.
.
.
ERR_HANDLER:
.code here does not get executed when "key1" does not exist in

myCollection.

How i can trap this error and continue processing?