mira, no sè si ya solucionaste tu problema pero si no, ahi te va.
lo que te decia nestor esta bien, nec. almacenar el numero de error y el tipo de error en una variable para despues almacenar esa vriable, podrias poner algo asi como
private sub msgerror ()
dim strerror as string 'almacena el tipo de error
dim interror as integer ' almecena el numero de error
on error goto error
{codigo}
error:
strerror= err.descripcion
interror= err.number
{codigo para almacenar datos en bd}
end sub
no lo he probado en vb y habra que ver si resulta, espero qe asi sea