There is a flaw in your logic. You use WriteLine() to write the error but WriteLine() will change @Error. You need to capture @Error to a var when it still holds the result from USE.
_________________________
Give a man a fish and he will be back for more. Slap him with a fish and he will go away forever.