Si vous n’êtes pas familier avec lien: / vba-exemples de gestion des erreurs [Gestion des erreurs]

encore, nous vous recommandons fortement de lire cet exemple d’abord. Lorsqu’une erreur dans Excel VBA se produit, les propriétés de l’objet Err sont remplies d’informations.

Situation:

Le programme calcule en dessous de la racine carrée du nombre.

Err Object in Excel VBA

  1. Placez un bouton de commande

sur votre feuille de calcul et ajouter les lignes de code suivantes:

Dim rng As Range, cell As Range

Set rng = Selection

For Each cell In rng

On Error GoTo InvalidValue:

cell.Value = Sqr(cell.Value)

Next cell

Exit Sub

InvalidValue:

MsgBox Err.Number & " " & Err.Description & " at cell " & cell.Address

Resume Next

Résultat lorsque vous sélectionnez Range ( « B2: B6 ») et cliquez sur le bouton de commande sur la feuille:

Err Object Result

Err Object Result

Explication: lorsqu’une erreur se produit, la propriété numéro de l’objet Err est rempli d’un numéro d’erreur unique de l’erreur actuelle et la propriété Description est rempli de la description d’erreur de l’erreur actuelle.

  1. Ces descriptions peuvent ne pas être très utile pour les utilisateurs de votre programme. Vous pouvez faire les messages d’erreur plus facile à utiliser en modifiant la dernière partie de la macro comme suit:

InvalidValue:

Select Case Err.Number

Case Is = 5

MsgBox "Can't calculate square root of negative number at cell " & cell.Address

Case Is = 13

MsgBox "Can't calculate square root of text at cell " & cell.Address

End Select

Resume Next

Astuce: passer par notre lien: programme / vba-exemples select cas [Select Case] pour en savoir plus sur la structure Select Case.

Résultat:

Friendly Message

Friendly Message