Aqui uma rotina para gerar um arquivo de log
de erros para você. 
Se você quiser monitorar os erros que ocorrem no seu sistema , pode gerar um arquivo com todos os erros que ocorrem durante o processamento.
Para tornar o processo automático e genérico vamos criar uma função chamada GravaErro em um módulo que será chamada toda vez que um erro ocorrer.
Para isto basta você fazer a chamada da função em toda rotina do seu tratamento de erros. A chamada a função poderá ser algo como:
GravaErro Err.Number, Err.Description, Err.Source, Now, App.path & "\Erro.log"
Vamos ao projeto:
1-) Inicie um novo projeto no Visual Basic e insira um módulo a projeto:
2-) A seguir inclua o seguinte código no módulo:
| Sub GravaErro(iErroNumero As Integer, _
                        sDescricao As String, _
                        sFonte As String,_ 
                        sData As String,_ 
                        sCaminho As String)
Dim F As Integer
F = FreeFile
Open sCaminho For Append As #F
Print #F, "Erro número: " & iErroNumero
Print #F, "Descrição    : " & sDescricao
Print #F, "Fonte          : " & sFonte
Print #F, "Data           : " & sData
Print #F, ""
Close #F
End Sub
 | 
Para fazer a rotina funcionar , apenas ajuste o seu tratamento de erro para chamar a função GravaErro.
E , é só ...   