Excel VBA IF selection.change
Fermé
meaurysse
Messages postés
66
Date d'inscription
mercredi 7 mars 2012
Statut
Membre
Dernière intervention
2 octobre 2020
-
19 mai 2015 à 11:56
meaurysse Messages postés 66 Date d'inscription mercredi 7 mars 2012 Statut Membre Dernière intervention 2 octobre 2020 - 20 mai 2015 à 21:00
meaurysse Messages postés 66 Date d'inscription mercredi 7 mars 2012 Statut Membre Dernière intervention 2 octobre 2020 - 20 mai 2015 à 21:00
A voir également:
- Excel vba selection change
- Liste déroulante excel - Guide
- Change dns - Guide
- Si et excel - Guide
- Word et excel gratuit - Guide
- Déplacer une colonne excel - Guide
1 réponse
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 716
Modifié par gbinforme le 19/05/2015 à 12:05
Modifié par gbinforme le 19/05/2015 à 12:05
Bonjour,
Comme dans ton code fait la mise à jour d'une autre cellule, il est relancé. Il faut donc désactiver la gestion des événements puis les remettre :
Toujours zen
La perfection est atteinte, non pas lorsqu'il n'y a plus rien à ajouter, mais lorsqu'il n'y a plus rien à retirer. Antoine de Saint-Exupéry
Comme dans ton code fait la mise à jour d'une autre cellule, il est relancé. Il faut donc désactiver la gestion des événements puis les remettre :
Private Sub Worksheet_Change(ByVal Target As Range) If MsgBox("Voulez-vous mettre la date à jour?", vbYesNo, "CONFIRMATION") = vbYes Then If Not Intersect(Target, Range("H6:H106")) Is Nothing Then Application.EnableEvents = False Selection.Offset(-1, 1) = Cells(2, 2).Value Application.EnableEvents = True End If End If End Sub
Toujours zen
La perfection est atteinte, non pas lorsqu'il n'y a plus rien à ajouter, mais lorsqu'il n'y a plus rien à retirer. Antoine de Saint-Exupéry
20 mai 2015 à 21:00
Merci beaucoup pour votre réponse, la fonctionnalité fonctionne à présent parfaitement ! :) Merci bien!
Cependant, il reste une chose qui me dérange... Lorsque je trie mon tableau par une colonne (pas forcément l'une d'entre celles qui concernent directement les colonnes de la macro), la Msgbox rapparait à nouveau à 2 reprises.....
En fait j'ai créé des macros de tris, qui trient mon tableau par rapport à la macro se trouvant en haut de chaque colonne. le bouton "nom", trie mon tableau par nom ou si je clique sur le bouton "contact", il trie par contact, etc...
Et lorsque j'exécute ma macro de tri par colonne, forcément la "valeur change" aussi dans les colonnes de ma fonction de date automatique... Que dois-je ajouter dans mes macros de boutons de tris pour éviter qu'il repose à chaque fois ma msgbox?
Merci d'avance