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

Excel Discussion :

Lancer une macro suite à un changement de valeur de cellule


Sujet :

Excel

  1. #1
    Membre du Club
    Inscrit en
    Avril 2006
    Messages
    124
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 124
    Points : 61
    Points
    61
    Par défaut Lancer une macro suite à un changement de valeur de cellule
    Bonjour,

    Je teste ce bout de code avec office 2007 et malheureusement il ne se passe rien au changement de valeur.
    J'ai créé simplement cette macro :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$B$2" Then
        msgbox "oups"
     End If
    End Sub
    Il ne se passe rien quand je change la valeur de la cellule B2.
    Faut il préciser le nom de l'onglet ou quelque chose d'autre?

    Merci

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 761
    Points : 28 619
    Points
    28 619
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    La procédure événementielle que tu utilises doit être placée dans le module de la feuille où tu souhaites intercepter l'événement.
    Imaginons que ce sit la feuille nommé Feuil1
    Dans l'explorateur de projets (Ctrl+R), sélectionne la feuille en question et sélectionne WorkSheet dans la liste se trouvant à gauche de la fenêtre de code.
    et place ton code. La liste se trouvant à droite donne la liste de toutes les procédures événementielles de cet objet.
    Si tu souhaites que le code réagisse sur toutes feuilles de ton classeur, tu dois placer ton code dans l'objet ThisWorkbook
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
      If Target.Address = "$B$2" Then
       MsgBox "oups"
      End If
    End Sub
    Autre possibilité. Tu souhaites que la procédure réagisse sur toutes les feuilles à l'exception de la feuille nommée Feuil3
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
      If Sh.Name <> "Feuil3" Then
        If Target.Address = "$B$2" Then
         MsgBox "oups"
        End If
      End If
    End Sub
    Ou encore
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
      If Sh.Name <> "Feuil3" And Target.Address = "$B$2" Then
         MsgBox "oups"
      End If
    End Sub
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

Discussions similaires

  1. [XL-2010] Exécuter une macro suite à des modifications de contenus de cellules
    Par poqcdlm dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 26/11/2014, 17h12
  2. Lancer une macro sur changement de valeur cellule
    Par reyzilin dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 13/12/2011, 17h57
  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. lancer une macro en fonction de la valeur d'une cellule
    Par arkorrigan dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 11/06/2008, 17h18
  5. [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

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