Be careful of "On error resume next"

I have spent many days trying to debug some simple code that should work, but has caused lots of problems. For the record, this code (case 1)…logname = someString

On Error Resume Next

Mkdir logname

On Error Goto 0

Exit Sub

is not the same as (case 2)…

logname = someString

On Error Goto er2handler

Mkdir logname

er2:

On Error Goto 0

Exit Sub

er2handler:

Resume next

Something goes horribly wrong inside the code in case 1, and following things that should work don’t.