Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Numero des erreurs access

2 réponses
Avatar
Xavier POWAGA
salut à tous,
mon programme access vba plante sur avec une erreur N° 2603. Pourtant mon
programme m'a l'air nickel !!

Y a t-il un moyen de connaitre a quoi correspond ce numéro d'erreur (et
d'une manière général y a t-il un libéllé de tous les numéros d'erreur qqe
part)

merci

2 réponses

Avatar
Gafish
Bonjour,

Tiré de l'aide Access, permet de générer une table avec les codes erreurs :

-------------------------------------------------------------

La procédure suivante crée une table contenant la plupart des codes et
chaînes d'erreur utilisés ou réservés par Microsoft Access et le moteur de
base de données Microsoft Jet. Tous les codes d'erreur ne figurent pas dans
la table obtenue car certains ne sont pas compris dans l'éventail des codes
d'erreur évalués par cette procédure (0 à 4 500).

Function TableErreursAccessEtJet() As Boolean
Dim bds As Database, tdf As TableDef, chp As Field
Dim rst As Recordset, lngCode As Long
Dim chErrAccess As String
Const conAppObjectError = "Erreur d'application ou d'objet"

On Error GoTo Erreur_TableErreursAccessEtJet
' Crée la table Erreurs comprenant les champs CodeErreur et LibelléErreur.
Set bds = CurrentDb
Set tdf = bds.CreateTableDef("ErreursAccessEtJet")
Set chp = tdf.CreateField("CodeErreur", dbLong)

tdf.Fields.Append chp
Set chp = tdf.CreateField("LibelléErreur", dbMemo)
tdf.Fields.Append chp

bds.TableDefs.Append tdf
' Ouvre le jeu d'enregistrements sur la table Erreurs.
Set rst = bds.OpenRecordset("ErreursAccessEtJet")
' Passe en revue les codes d'erreur.
For lngCode = 0 To 3500
On Error Resume Next
' Relève chaque erreur.
chErrAccess= AccessError(lngCode)
DoCmd.Hourglass True
' Passe outre les numéros d'erreur sans chaînes associées.

If chErrAccess<> "" Then
' Passe outre les codes qui génèrent des erreurs d'application et
d'objet.
If chErrAccess<> conAppObjectError Then
' Ajoute chaque code et chaîne d'erreur à la table Errors.
rst.AddNew
rst!ErrorCode = lngCode
' Ajoute la chaîne au champ Mémo.
rst!ErrorString.AppendChunk chErrAccess
rst.Update
End If
End If
Next lngCode
' Ferme le jeu d'enregistrements.
rst.Close

DoCmd.Hourglass False
RefreshDatabaseWindow
MsgBox "Table des erreurs Access et Jet créée."
TableErreursAccessEtJet = True

Exit_TableErreursAccessEtJet:
Exit Function

Erreur_TableErreursAccessEtJet:
MsgBox Err & ": " & Err.Description
TableErreursAccessEtJet = False
Resume Exit_TableErreursAccessEtJet
End Function

---------------------------------------------

"Xavier POWAGA" a écrit dans le message news:
41ab164a$0$8582$
salut à tous,
mon programme access vba plante sur avec une erreur N° 2603. Pourtant mon
programme m'a l'air nickel !!

Y a t-il un moyen de connaitre a quoi correspond ce numéro d'erreur (et
d'une manière général y a t-il un libéllé de tous les numéros d'erreur qqe
part)

merci




Avatar
Xavier POWAGA
merci.

"Gafish" a écrit dans le message de news:
u9wRt$
Bonjour,

Tiré de l'aide Access, permet de générer une table avec les codes erreurs
:

-------------------------------------------------------------

La procédure suivante crée une table contenant la plupart des codes et
chaînes d'erreur utilisés ou réservés par Microsoft Access et le moteur de
base de données Microsoft Jet. Tous les codes d'erreur ne figurent pas
dans
la table obtenue car certains ne sont pas compris dans l'éventail des
codes
d'erreur évalués par cette procédure (0 à 4 500).

Function TableErreursAccessEtJet() As Boolean
Dim bds As Database, tdf As TableDef, chp As Field
Dim rst As Recordset, lngCode As Long
Dim chErrAccess As String
Const conAppObjectError = "Erreur d'application ou d'objet"

On Error GoTo Erreur_TableErreursAccessEtJet
' Crée la table Erreurs comprenant les champs CodeErreur et LibelléErreur.
Set bds = CurrentDb
Set tdf = bds.CreateTableDef("ErreursAccessEtJet")
Set chp = tdf.CreateField("CodeErreur", dbLong)

tdf.Fields.Append chp
Set chp = tdf.CreateField("LibelléErreur", dbMemo)
tdf.Fields.Append chp

bds.TableDefs.Append tdf
' Ouvre le jeu d'enregistrements sur la table Erreurs.
Set rst = bds.OpenRecordset("ErreursAccessEtJet")
' Passe en revue les codes d'erreur.
For lngCode = 0 To 3500
On Error Resume Next
' Relève chaque erreur.
chErrAccess= AccessError(lngCode)
DoCmd.Hourglass True
' Passe outre les numéros d'erreur sans chaînes associées.

If chErrAccess<> "" Then
' Passe outre les codes qui génèrent des erreurs d'application et
d'objet.
If chErrAccess<> conAppObjectError Then
' Ajoute chaque code et chaîne d'erreur à la table Errors.
rst.AddNew
rst!ErrorCode = lngCode
' Ajoute la chaîne au champ Mémo.
rst!ErrorString.AppendChunk chErrAccess
rst.Update
End If
End If
Next lngCode
' Ferme le jeu d'enregistrements.
rst.Close

DoCmd.Hourglass False
RefreshDatabaseWindow
MsgBox "Table des erreurs Access et Jet créée."
TableErreursAccessEtJet = True

Exit_TableErreursAccessEtJet:
Exit Function

Erreur_TableErreursAccessEtJet:
MsgBox Err & ": " & Err.Description
TableErreursAccessEtJet = False
Resume Exit_TableErreursAccessEtJet
End Function

---------------------------------------------

"Xavier POWAGA" a écrit dans le message news:
41ab164a$0$8582$
salut à tous,
mon programme access vba plante sur avec une erreur N° 2603. Pourtant mon
programme m'a l'air nickel !!

Y a t-il un moyen de connaitre a quoi correspond ce numéro d'erreur (et
d'une manière général y a t-il un libéllé de tous les numéros d'erreur
qqe
part)

merci