Si vous essayez de tirer le meilleur parti de vos projets MS Access , ou vous commencez à programmer en Visual Basic, ayant un gestionnaire d'erreurs dans vos Subs et fonctions peut sauver votre utilisateur final une beaucoup de chagrin . Voici un moyen simple d'ajouter un gestionnaire d'erreurs de votre code qui vous permettra de connaître des erreurs comme ils viennent et ensuite adapter la réponse à l'erreur spécifique. Choses que vous devez
Visual Basic 6 ou une fenêtre de code ouvert dans un MS Access 2003 ou plus tôt module de
Afficher plus Instructions
1
ouvrir une fenêtre de code dans les deux VB6 ou un module de MS Access et créer une nouvelle routine Sub nommé TestErrorHandler . A ce stade, il n'y aura pas de code dans les sous qui ressemblera à ceci: TestErrorHandler Public Sub ( ) End Sub
2
Ajouter le dessous des lignes à la routine Sub; ne pas retaper les Public Sub Fin et nouveau lignes Sub . Il est important de vous assurer que vous ajoutez une virgule après la ligne " error_exit " et " ErrorHandler . " En outre, la ligne " ErrorHandler » doit être tapé exactement comme il est déclaré dans la ligne "On Error GoTo ErrorHandler . " Vous pouvez nommer votre gestionnaire d'erreurs "Jim" si vous le souhaitez. mais vous devez garder le nom cohérent : TestErrorHandler Public Sub () On Error GoTo ErrorHandlerError_Exit : Sortie SubErrorHandler : ligne de SubThe End "On Error GoTo ErrorHandler " dirige le sous pour trouver un gestionnaire d' erreur si une erreur se poser quand il s'agit de la ligne running.The " error_exit « sorties vous sortir de la Sous puisque la ligne " Exit Sub " a été ajoutée juste en dessous de la ligne it.The " ErrorHandler :« c'est là que des erreurs spécifiques seront traitées
3 de
. maintenant, ajoutez les deux lignes suivantes de code directement sous " ErrorHandler ": Select Case Err.NumberEnd SelectWe utilisez une instruction Select Case pour gérer les éventuelles erreurs spécifiques que nous pourrions faire face à
4
. informer l'utilisateur qu'une erreur a eu lieu, et leur donner quelques informations supplémentaires . Nous le ferons dans notre Select Case utilisant " Case Else ». Pour cet exemple, nous allons garder les choses simples en informant l'utilisateur qu'une erreur s'est produite et que le nombre d'erreur , ainsi qu'une brève description. Ajoutez les lignes de code suivantes à votre " ErrorHandler ": Case Else pstrErrorMessage = " Numéro d'erreur: " & Err.Number _ & vbCrLf & Err.Description MsgBox pstrErrorMessage , vbExclamation , "Erreur" Resume Sous entières Error_ExitThe devraient maintenant ressembler à ceci: TestErrorHandler public Sub () On Error GoTo ErrorHandlerError_Exit : Sortie SubErrorHandler : pstrErrorMessage Dim As String Select Case Err.Number Case Else pstrErrorMessage = " Numéro d'erreur: " & Err.Number _ & vbCrLf & Err.Description MsgBox pstrErrorMessage , vbExclamation , "Erreur" reprendre error_exit End Sub SelectEnd
5
Le véritable avantage d'avoir un gestionnaire d'erreurs en place , c'est que vous pouvez traiter les erreurs attendues dans un mode élégante. Par exemple, si vous décidez d'écrire une routine Sub qui va déplacer un fichier (s) d'un dossier à l'autre, mais s'attendre à ce que , à l'occasion que l'un ou plusieurs des fichiers n'existeront pas , vous obtiendrez probablement un numéro d'erreur répétée 53 , ce qui est une erreur de fichier introuvable . Vous pouvez ajouter une ligne à l' instruction Select Case qui permettra de résoudre cette erreur, puis continuer avec la routine Sub. Ajoutez ces deux lignes directement sous la ligne " Select Case " : Case 53 CV NextBy traitant le dossier attendu pas trouvé d'erreur dans ce mode, vous pouvez avoir la routine Sub continuer à fonctionner sans en avertir l'utilisateur ce qui s'est passé . Évidemment, si vous voulez que l'utilisateur sache que le fichier spécifié est manquant , vous devez ajouter une boîte de message à cet effet. L'ensemble Sous ressemble maintenant à ceci ( traduit comment le code doit ressembler à l'environnement de programmation VB l' écran associé à cette étape) : TestErrorHandler Public Sub () On Error GoTo ErrorHandlerError_Exit : Sortie SubErrorHandler : pstrErrorMessage Dim As String Select Case Err.Number Case 53 CV Case Else Suivant pstrErrorMessage = " Numéro d'erreur: " & Err.Number _ & vbCrLf & Err.Description MsgBox pstrErrorMessage , vbExclamation , "Erreur" Reprendre error_exit End Sub SelectEnd
< br >