bonjour, j'ai des zones de saisie pour des dates en VB6. J'usque là ça
va. afin de pouvoir faire des comparaisons, je les convertis en type
long.
date_du_jour = CLng(DateValue(Date))
On Error GoTo error_debut
etc.
le problème, c'est qd l'opérateur rentre des daes que le système ne
peut pas convertir. J'ai une erreur système qui apparaît, alors que je
voudrais mettre un message à moi. c'es le pourquoi du on error.
Comment faire pour bloquer les erreurs systèmes, les récupérer et
mettre un message à soi à la place.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
ng
Salut,
Voici un exemple :
Private Sub Form_Load() '//Gestion d'erreurs On Error GoTo Form_Load_Error
Dim a As Long
'//Erreur a = 4 / 0
'//Plus de gestion d'erreur On Error GoTo 0 '//On se sauve Exit Sub
'//Gestion des erreurs Form_Load_Error: If Err.Number = 11 Then '//Div par 0 MsgBox "Erreur : division par 0 !", vbExclamation, "Erreur" Else '//Autre erreur inattendue MsgBox Err.Description, vbCritical, "Erreur n°" & Err.Number End If
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/ http://apisvb.europe.webmatrixhosting.net/
thierry a écrit :
bonjour, j'ai des zones de saisie pour des dates en VB6. J'usque là ça va. afin de pouvoir faire des comparaisons, je les convertis en type long.
date_du_jour = CLng(DateValue(Date)) On Error GoTo error_debut etc.
le problème, c'est qd l'opérateur rentre des daes que le système ne peut pas convertir. J'ai une erreur système qui apparaît, alors que je voudrais mettre un message à moi. c'es le pourquoi du on error.
Comment faire pour bloquer les erreurs systèmes, les récupérer et mettre un message à soi à la place.
Cordialement
Thierry
Salut,
Voici un exemple :
Private Sub Form_Load()
'//Gestion d'erreurs
On Error GoTo Form_Load_Error
Dim a As Long
'//Erreur
a = 4 / 0
'//Plus de gestion d'erreur
On Error GoTo 0
'//On se sauve
Exit Sub
'//Gestion des erreurs
Form_Load_Error:
If Err.Number = 11 Then '//Div par 0
MsgBox "Erreur : division par 0 !", vbExclamation, "Erreur"
Else '//Autre erreur inattendue
MsgBox Err.Description, vbCritical, "Erreur n°" & Err.Number
End If
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
http://apisvb.europe.webmatrixhosting.net/
thierry <thierry.marcel@laposte.net> a écrit :
bonjour, j'ai des zones de saisie pour des dates en VB6. J'usque là ça
va. afin de pouvoir faire des comparaisons, je les convertis en type
long.
date_du_jour = CLng(DateValue(Date))
On Error GoTo error_debut
etc.
le problème, c'est qd l'opérateur rentre des daes que le système ne
peut pas convertir. J'ai une erreur système qui apparaît, alors que je
voudrais mettre un message à moi. c'es le pourquoi du on error.
Comment faire pour bloquer les erreurs systèmes, les récupérer et
mettre un message à soi à la place.
Private Sub Form_Load() '//Gestion d'erreurs On Error GoTo Form_Load_Error
Dim a As Long
'//Erreur a = 4 / 0
'//Plus de gestion d'erreur On Error GoTo 0 '//On se sauve Exit Sub
'//Gestion des erreurs Form_Load_Error: If Err.Number = 11 Then '//Div par 0 MsgBox "Erreur : division par 0 !", vbExclamation, "Erreur" Else '//Autre erreur inattendue MsgBox Err.Description, vbCritical, "Erreur n°" & Err.Number End If
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/ http://apisvb.europe.webmatrixhosting.net/
thierry a écrit :
bonjour, j'ai des zones de saisie pour des dates en VB6. J'usque là ça va. afin de pouvoir faire des comparaisons, je les convertis en type long.
date_du_jour = CLng(DateValue(Date)) On Error GoTo error_debut etc.
le problème, c'est qd l'opérateur rentre des daes que le système ne peut pas convertir. J'ai une erreur système qui apparaît, alors que je voudrais mettre un message à moi. c'es le pourquoi du on error.
Comment faire pour bloquer les erreurs systèmes, les récupérer et mettre un message à soi à la place.
Cordialement
Thierry
Vincent Guichard
thierry a écrit :
bonjour, j'ai des zones de saisie pour des dates en VB6. J'usque là ça va. afin de pouvoir faire des comparaisons, je les convertis en type long.
date_du_jour = CLng(DateValue(Date)) On Error GoTo error_debut etc.
le "On Error ..." doit etre avant le code ou on veut "monitorer" les erreurs:
sub proc ' ou function 'Code avec erreurs non gérées ... On Error GoTo Gestion_Erreur 'Code avec erreurs gérées ... exit sub 'ou exit function Gestion _Erreur: 'Code de gestion de l'erreur ... end sub ' ou function
Il existe aussi: On Error Resume Next pour ne pas gerer les erreurs, ou pour les gérer au coup par coup avec Err.Number
On Error GoTo 0 pour restaurer la gestion d'erreur par default.
thierry a écrit :
bonjour, j'ai des zones de saisie pour des dates en VB6. J'usque là ça
va. afin de pouvoir faire des comparaisons, je les convertis en type
long.
date_du_jour = CLng(DateValue(Date))
On Error GoTo error_debut
etc.
le "On Error ..." doit etre avant le code ou on veut "monitorer" les
erreurs:
sub proc ' ou function
'Code avec erreurs non gérées
...
On Error GoTo Gestion_Erreur
'Code avec erreurs gérées
...
exit sub 'ou exit function
Gestion _Erreur:
'Code de gestion de l'erreur
...
end sub ' ou function
Il existe aussi:
On Error Resume Next
pour ne pas gerer les erreurs, ou pour les gérer au coup par coup avec
Err.Number
On Error GoTo 0
pour restaurer la gestion d'erreur par default.
bonjour, j'ai des zones de saisie pour des dates en VB6. J'usque là ça va. afin de pouvoir faire des comparaisons, je les convertis en type long.
date_du_jour = CLng(DateValue(Date)) On Error GoTo error_debut etc.
le "On Error ..." doit etre avant le code ou on veut "monitorer" les erreurs:
sub proc ' ou function 'Code avec erreurs non gérées ... On Error GoTo Gestion_Erreur 'Code avec erreurs gérées ... exit sub 'ou exit function Gestion _Erreur: 'Code de gestion de l'erreur ... end sub ' ou function
Il existe aussi: On Error Resume Next pour ne pas gerer les erreurs, ou pour les gérer au coup par coup avec Err.Number
On Error GoTo 0 pour restaurer la gestion d'erreur par default.