Alerte sur changement de valeur

  • Initiateur de la discussion Initiateur de la discussion julien57
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

J

julien57

Guest
Bonjour le forum,

Voilà je travaille sur un fichier qui me sert de tableau de bord. Ce fichier récupère plusieurs valeurs de type texte (par exemple en H8).

Mon souhait est de créer une alerte Msg pour visualiser le changement de valeur en H8.

Si la création de la msg ne pose pas de problème, je bloque sur le moyen de détecter le changement de valeur en H8 et uniquement sur H8 (par exemple)

Où mettre le code ?


Merci de votre aide
 

Pièces jointes

  • Sans titre 1.jpg
    Sans titre 1.jpg
    35.2 KB · Affichages: 156
  • Sans titre 1.jpg
    Sans titre 1.jpg
    35.2 KB · Affichages: 174
  • Sans titre 1.jpg
    Sans titre 1.jpg
    35.2 KB · Affichages: 173
Re : Alerte sur changement de valeur

Bonjour julien,

le code est à placer dans le code de la feuille concernée (Feuil1 par exemple)


Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$H$8" Then
        MsgBox "alerte"
    End If
End Sub

Edit :
Oups, j'avais pas bien vu que c'est une formule... Change ne se déclenche que s'il y a changement manuel de la cellule, il vaut mieux fouiller du côté de Calculate dans le cas contraire
 
Re : Alerte sur changement de valeur

J'ai essayé comme ça, visiblement il y a un message d'erreur concernant la déclaration de la procédure.

J'avoue que là ça dépasse un peu mes compétences...😱

Code:
Private Sub Worksheet_Calculate(ByVal Target As Range)
If Target.Address = "$H$8" Then MsgBox "Alerte"
End Sub
 
Re : Alerte sur changement de valeur

Re

c'est exact, mais à priori cela ne doit pas poser de problème, enfin après tout dépend de ce que tu veux faire... pour ton alerte peut être modifier comme suit :

Code:
Option Explicit
Private Sub Worksheet_Calculate()
If Range("H8").Value <> mavaleur Then
    MsgBox "Alerte !!!"
    mavaleur = Range("H8").Value
End If
End Sub
 
Re : Alerte sur changement de valeur

Moi quelque soit la cellule modifiée, j'ai la msgbox.

Le problème est que j'ai d'autres cellules sur la même feuille qui me servent de 'pense bête' ou encore d'autres qui se mettent à jour mais pour lesquelles je n'ai pas besoin d'alerte.


Au risque de paraître idiot, n'est il pas possible de définir Target comme avec Worksheet_change mais pour le Worksheet_calculate??

genre :

Code:
Private Sub Worksheet_Calculate()
Dim Target As Range
If Target.Address = "$H$8" Then MsgBox "Alerte"
End Sub

c'est idiot?😀
 
Re : Alerte sur changement de valeur

Bonjour,

Oui les modules sont bien placés. ça envoi la msgbox même quand tu modifies une cellules dans un autre classeur ouverts en même temps.

Apparemment la variable mavaleur est vide lorsque le test entre H8 et mavaleur s'effectue.

problème de déclaration?
 
Re : Alerte sur changement de valeur

Bonjour,

comprends pas trop, chez moi ce code se déclenche uniquement lorsqu'il y a calcul sur la feuille concernée (celle où se trouve la procédure événementielle "calculate")... ni sur les autres feuilles, ni sur les autres classeurs... Ta variable est elle bien initialisée lors de l'ouverture du classeur ? Ci joint un exemple qui fonctionne sur la cellule M1 de "Feuil1"...

@+
 

Pièces jointes

Re : Alerte sur changement de valeur

Je vais essayer de faire une analyse aussi claire que possible.

A l'ouverture du fichier, mavaleur est vide (vu par msgbox mavaleur). Tout de suite après, la msgbox alerte se lance. c'est surement dû au fait que lors de l'ouverture du fichier, la cellule se met à jour. Problématique.

Ensuite c'est bon, ça marche dans le sens où si je modifie une autre cellule pas d'alerte intempestive.

Par contre si j'ouvre en même temps le fichier sur lequel la cellule va récupérer sa valeur, là c'est une catastrophe. La modification de n'importe quelles cellules entraine le message d'alerte sur l'un ou l'autre des fichiers. A noter que la encore la variable mavaleur est vide.

A noter également que si j'ouvre un fichier quelconque (dans le sens où l'on ne récupère pas de valeur dessus), cela fonctionne.

A la différence de ton fichier exemple (qui fonctionne bien), ma cellule récupère une valeur sur un autre fichier et non sur une cellule du même onglet. Peut être cela modifie t'il le fonctionnement?
 
Dernière modification par un modérateur:
Re : Alerte sur changement de valeur

Re

vois pas très bien pourquoi chez toi, la variable n'est pas initialisée, un truc doit m'échappée, la variable doit être initialisée par la valeur de la cellule à contrôler... Donc dans le même classeur que le code... J'ai fait un test, en mettant dans M1 une formule se référant à un autre classeur, pas de souci....
 
Re : Alerte sur changement de valeur

Bon ben c'est pas grave, je vais encore murir un peu mon choix et voir si je n'ai pas un autre moyen de faire (sans alerte je veux dire).

En tout cas je vous remercie pour le temps que vous avez passé à essayer de m'aider.

A bientôt. 🙂
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
16
Affichages
507
Retour