The "Finally" clause of a try..catch..finally construct *always* executes. It's designed to allow you to clean up any resources that you might have used, like database connections, etc.
If you want to return to the form, set a flag in the "catch" part to indicate an exception ocurred. Your code will run through the Finally clause as normal, and then you can test your flag to see if you need to redisplay your form.
Chip H.