I think you want to use err.raise. This will allow an error in a called function to be handled by an error handler in the caller. See the documentation for more info to see if this will solve your problem.

Charlie Zimmerman
http://www.freevbcode.com