Probleme macro avec IsError

Bonjour,

Je sollicite votre aide car je rencontre un soucis avec cette macro :

For Each c In Sheets("Barquette").Range("B6,B12,B18,B30,B40,B46,B52,B63,Q6,Q12,Q18,Q30,Q40,Q46,Q52,Q53")
If IsError(c) Then MsgBox "Attention, il y a une anomalie dans le menu! Veuillez corriger les erreurs avant de poursuivre l'impression", vbExclamation
Next
UserForm4.Show

Je souhaiterais que la macro n'ouvre pas userform si une erreur est détecté.

Merci par avance pour votre aide

Bonjour

code à essayer :

For Each c In Sheets("Barquette").Range("B6,B12,B18,B30,B40,B46,B52,B63,Q6,Q12,Q18,Q30,Q40,Q46,Q52,Q53")
If IsError(c) Then
    MsgBox "Attention, il y a une anomalie dans le menu! Veuillez corriger les erreurs avant de poursuivre l'impression", vbExclamation
Else: UserForm4.Show
End If
Next

Cordialement

Votre macro fait ca :

l'Userform s'ouvre en premier puis ensuite c'est le msgbox puis à nouveau l'userform.

Alors qu'il me faudrait :

Msgbox s'ouvre si une erreur est détecter puis arret de la procédure

sinon s 'il n'y a pas d'erreur , execution de userform4

Re

Peut être comme ceci :

For Each c In Sheets("Barquette").Range("B6,B12,B18,B30,B40,B46,B52,B63,Q6,Q12,Q18,Q30,Q40,Q46,Q52,Q53")
    If IsError(c) Then j = j + 1
Next
If j > 0 Then
    MsgBox "Attention, il y a une anomalie dans le menu! Veuillez corriger les erreurs avant de poursuivre l'impression", vbExclamation
Else: userform4.Show: j = 0
End If

Parfais

Merci beaucoup

Re

Ok. Oubliez pas de cloturer vos fils lorsque vous en avez terminé.

Click sur le petit v en haut à doite.

Cordialement

Rechercher des sujets similaires à "probleme macro iserror"