Palabras clave: cambiar, personalizar, customizar, mensajes, avisos, error
Autor: Desconocido
Extraído de: La web del Búho
Objetivo
Sustituir los mensajes de error que ofrece Access por otros personalizados.
Comenta el amigo desconocido...
Mas o menos la idea es esta.
En el codigo de errores de todos los formularios etc, recoge el error mediante:
Ejemplo:
Private Sub F1Ayuda_Click()
On Error GoTo Err_Comando44_Click
MuestraAyuda
Exit_Comando44_Click:
Exit Sub
Err_Comando44_Click:
'Aqui llamo a la funcion errores
Errores Err.Number, Me.Name
Resume Exit_Comando44_Click
End Sub
'Esta funcion iría en un módulo.
'Recibe como parametros el numero del error y el formulario origen del error
Function Errores(NumeroError As Double, Formulario As String)
Dim rst As Recordset
Dim SQL As String
'Aqui ya puedes tratar los errores como quieras.
' Tienes una tabla llamada TblErrores...pues abrir el
' recordset de la tabla.
' Esta tabla puedes construirla con dos campos, por ejemplo
' FldCodigoError -> Double
' FldMensajePersonalizadoError ->String
SQL = "Select * from TblErrores Where FldCodigoError=" & NumeroError
Set rst = CurrentDB.OpenRecordset(SQL, dbOpenDynaset)
If rst.EOF = True Then
'No tienes recogido en la tabla dicho error...pon el mensaje que quieras
MsgBox "Aviso desde el formulario:" & Formulario & Chr(13) _
& "Nº: " & NumeroError & " ->" & Err.Description, vbInformation + vbOKOnly, "AVISO"
Else
'Tienes mensaje personalizado
MsgBox "Aviso desde el formulario:" & Formulario & Chr(13) _
& Rst("FldMensajePersonalizadoError"), vbInformation + vbOKOnly, "AVISO"
End If
rst.Close
Set rst = Nothing
End Function