Maybe we should fork this conversation. (Is there a way to do that?) While I still would like to get rid of the annoying error message, I also find the topic of End interesting.

I know, changing subs into functions for passing exceptions has been fashionable among programmers for quite a while, but personally I don't find it so elegant because it treats the exception as the rule. Moreover, you can't consistently use that method: What if, instead of a sub, you already have a function? You could lump the exception return together with the regular return value, which is what Microsoft did for InputBox. But that's not good; in fact, it has caused much trouble already, which is why Steiner posted a workaround here.