Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Créer un message d'erreur

Jekk

XLDnaute Nouveau
Bonjour,

J'ai fait un bouton avec l'enregistreur de macro pour réinitialiser mon tableau , or si rien n'est sélectionné il me met un debug.
J'aimerais que si rien n'est sélectionné en cliquant pour réinitialiser cela me mette un message d'erreur.

Comment fait ?

Merci à vous
 

Lone-wolf

XLDnaute Barbatruc
Bonjour jekk, le Forum

Tu peux être un peu plus précis? Tu parle de sélection, mais c'est une cellule ou plusieures? Quelle colonne?
Sans fichier joint, difficile de donner une réponse satisfaisante.
 

don_pets

XLDnaute Occasionnel

Bonjour,

Peux-tu nous donner plus d'info ou bien même mieux nous glisser un fichier exemple afin de cerner au mieux ton besoin.
 

Lone-wolf

XLDnaute Barbatruc
Bonjour don_pets

@Jekk

Sinon, un essai comme ceci

VB:
Sub test()
Dim cel As Range

    For Each cel In Range("a2:p8")
        Set cel = ActiveCell
        If Application.Intersect(cel, Range("a2:p8")) Is Nothing Then _
           MsgBox "Veuillez sélectionner la ou les cellules": Exit Sub
    Next cel
    Application.Goto Range("a1")
End Sub
 

Dranreb

XLDnaute Barbatruc
Bonjour.
Ah, oh ce n'est pas la peine de mettre un message d'erreur à mon avis :
VB:
Sub RàZTournée()
WshTournée.[TabÉtapes[?]].Value = "û"
On Error Resume Next
WshTournée.[TabTournée].Delete xlShiftUp
End Sub
Sub RemiseEtapeAZero()
WshTournée.[TabÉtapes[?]].Value = "û"
End Sub
Remarque: don_pets, que je salue, l'a bien compris et l'a exactement suggéré aussi !
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Cependant si vous y tenez vraiment :
VB:
Sub RàZTournée()
Dim Retenus As Boolean, Reliquat As Boolean
Retenus = Application.CountIf(WshTournée.[TabÉtapes[?]], "ü") > 0
Reliquat = WshTournée.[TabTournée].ListObject.ListRows.Count > 0
If Not (Retenus Or Reliquat) Then MsgBox _
   "Ça va, c'est bon, là, tout est déjà à l'état initial !", _
   vbCritical, "RÉINITIALISATION TOURNÉE"
If Retenus Then WshTournée.[TabÉtapes[?]].Value = "û"
If Reliquat Then WshTournée.[TabTournée].Delete xlShiftUp
End Sub
Sub RemiseEtapeAZero()
Dim Retenus As Boolean, Reliquat As Boolean
Retenus = Application.CountIf(WshTournée.[TabÉtapes[?]], "ü") > 0
If Not Retenus Then MsgBox _
   "Ça va, c'est bon, là, aucune étape n'est retenue !", _
   vbCritical, "RÉINITIALISATION ÉTAPES"
WshTournée.[TabÉtapes[?]].Value = "û"
End Sub
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…