Ya jovenes, ninguno o todos tiene la razon amedias, lo mas sano si queires controlar todos los errores posibles, es utilizando On Error Resume Next, y mucho mejor que On Error GoTo, pero haciendolo en conjunto con Err, pero solo en donde sabemos que puede surgir un error por falta de datos o que estos no sean los correctos o esperados, lo podemos de la siguiente manera:
Err.Clear
On Error Resume Next
x = 1 / 0
If Err <> 0 Then
MsgBox Err.Description
End If
De esta forma como dice Antonio, se continua desde donde se produce el error, y como en el ejemplo, nos damos cuenta que es una división entre CERO, y podemos avisarle al usuario que introduzca un valor correcto.
Pero despues y por las razones que menciono verzulsan lineas arriba, para tener buenas tecnicas de programación, lo mas sano si no queremos perder el control del resto del programa es desactivar On Error Resume Next mediente:
On Error GoTo 0
De esta manera podremos detectar y corregir errores depurando nuestro codigo.
En pocas palabras:
Ni se debe de abusar de On Error Resume Next, ni de On Error GoTo.
Gracias.