IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Project Discussion :

Exécuter macro VBA sur changement de valeur de cellule


Sujet :

VBA Project

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    septembre 2021
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : septembre 2021
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Exécuter macro VBA sur changement de valeur de cellule
    Bonjour,

    Je viens assez souvent sur ce forum que je trouve très instructif et m'a permis de trouver les réponses à mes questions... sauf cette fois-ci, c'est pourquoi c'est à mon tour de vous poser une colle.

    Je vous écris donc car je rencontre un problème.
    J'ai besoin d'exécuter une macro VBA quand la valeur d'une cellule change. Pour cela j'ai testé le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$A$1" Then
        ...
        ' Code VBA
        ...
    End If
    End Sub
    Ou le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A1")) Is Nothing Then
        ...
        ' Code VBA
        ...
    End sub
    Dans les 2 cas, si je change la valeur de la cellule A1 manuellement, le code VBA est bien exécuté
    Si c'est une macro VBA qui change la valeur de cette cellule, cela fonctionne aussi.
    Mais si c'est une formule Excel qui change cette valeur du genre A1= B1+C1 (mais avec B1 et C1 d'une autre feuille pour m'assurer que ce n'est pas le changement de B1 ou C1 de la même feuille qui lance la procédure), j'ai bien la confirmation que rien ne se passe, la procédure Private Sub Worksheet_Change(ByVal Target As Range) n'est pas lancée. Je pense qu'il regarde la formule de la cellule (qui elle ne pas change) et non pas la valeur du résultat de la formule.

    Avez-vous une idée pour y remédier ?

    Merci d'avance pour votre aide.

  2. #2
    Nouveau Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    septembre 2021
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : septembre 2021
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    Personne n'a d'idée concernant mon problème ?

    Merci d'avance pour vos réponses.

Discussions similaires

  1. Réponses: 8
    Dernier message: 24/06/2015, 17h16
  2. [XL-2007] Lancer une macro suite à un changement de valeur de cellule
    Par jnauche dans le forum Excel
    Réponses: 1
    Dernier message: 21/03/2014, 17h38
  3. [XL-2007] Macro événementielle sur changement de valeur dans cellule
    Par lagratteCchouette dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 12/06/2009, 15h53
  4. [VBA-E]Lancer une macro sur changement de valeur cellule ?
    Par jeremiegrenoble dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 07/03/2006, 14h22
  5. [VBA-E]Executer fonction VBA sur Excel sans activer la macro
    Par marie10 dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 19/01/2006, 14h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo