leusha a écrit :
Qu'est ce que tu entends par "gestion d'erreur dans les process" ?
Aurais-tu un exemple ?
|
les erreurs dont tu parle sont des erreurs "non gérées".
en gros VBA ne sait pas quoi faire et te pose la question : débugage ? ou pas ?
faire une gestion d'erreur
Exemple, ma fonction VBA suivante permet de supprimer un Onglet dans Excel, le code en rouge permet de faire en sorte qu'elle ne "plante jamais"
Citation :
' = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
' Procédure : fg_SupprimeOnglet
' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
' Création : 09/02/2008
' Auteur : Xavier Ferrer
' Version : 1.0
' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
' Entrée : strNom -> nom de la Onglet Excel à creer dans le classeur actif
' Sortie : booléen 'True' si succès, 'False' sinon
' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
' Description : Suppression d'une Onglet Excel selon le nom spécifié (et si elle existe)
' = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Public Function fg_SupprimeOnglet(strNomOnglet As String) As Boolean
On Error GoTo fg_SupprimeOnglet_Error
fg_SupprimeOnglet = False
With ActiveWorkbook
If fg_ExistanceOnglet(strNomOnglet) Then
Application.DisplayAlerts = False
.Worksheets(strNomOnglet).Delete
Application.DisplayAlerts = True
End If
End With
fg_SupprimeOnglet = True
Exit Function
fg_SupprimeOnglet_Error:
End Function
|
Par contre toi au lieu de ne rien faire, t'aurais interret a te faire une routine de création de fichier log d'erreur, et de dire a l'application de se fermer...
puis tu "copie"-"colle" ta gestion d'erreur partout, dans chaques fonctions, chaques procédures, chaques évenements de tes "robots"...
un petit journée de boulot