Hola que tal, no se casi nada de VB pero estoy seguro que este artículo tiene lo que necesitas:
http://www.vb-helper.com/tut6.htm
Hay que saber que un programa puede tener errores por dos causas generales: los que se generan por excepciones de usuario (el que escribe el código) y los errores fatales que fuerzan al programa a terminar inmediatamente por razones obvias como el error de sintaxis, la llamada a una función inexistente o un loop infinito.
En PHP para manejar los errores de "usuario" se usa la función set_error_handler("miManejador", E_ALL);
Y para los errores "fatales" la función set_shutdown_error("miManejador");
Para ejecutar los errores de usuario es necesario usar la función trigger_error() y para los errores fatales no hay función ya que el programa es el que decide cuando se deberá ejecutar el manejador de errores fatales (que es lo que deseas hacer).
Saludos!