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

Macros et VBA Excel Discussion :

Ne pas lancer une macro quand un autre est en action [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Août 2015
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Août 2015
    Messages : 23
    Par défaut Ne pas lancer une macro quand un autre est en action
    Bonjour,
    J'ai un probleme avec une macro. Je voudrais mettre un message l'alerte quand on modifie une cellule qui se trouve dans la colonne "A"
    le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Application.CountA(Range("A2:A5")) = 0 Then Exit Sub
    If Not Application.Intersect(Target, Range("A4:A1000")) Is Nothing Then
    MsgBox "Avez-vous informer le superviseur du mode d'emplois de ce programme" & Chr(10) & _
    " " & Chr(10) & _
    "MERCI", vbOKOnly + vbInformation, "X corpo"
    End If
    End Sub
    Cela marche bien, le probleme est quand j'insère deux nouvelles lignes avec le code ci-dessous:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Sub Nouvelle_ligne()
    '
    ' Nouvelle_ligne Macro
    '
     
    '
        Rows("2:3").Select
        Application.CutCopyMode = False
        Selection.Copy
        Rows("4:5").Select
        Selection.Insert Shift:=xlDown
        Rows("4:5").RowHeight = 15
        Range("B4").Font.Color = RGB(220, 230, 240)
        Range("B5").Font.ColorIndex = 2
     
    End Sub
    Il me lance la macro "Private Sub Worksheet_SelectionChange(ByVal Target As Range)" et je n'en veux pas
    J'ai ajouté cela "If Application.CountA(Range("A2:A5")) = 0 Then Exit Sub " à Private Sub pour bloquer l'action mais cela ne marche pas.

  2. #2
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    bonjour,

    désactive la gestion des événements durant l'exécution de ta sub "Nouvelle_ligne"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.EnableEvents=false

  3. #3
    Membre averti
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Août 2015
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Août 2015
    Messages : 23
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Application.EnableEvents = False
        Rows("2:3").Select
        Application.CutCopyMode = False
        Selection.Copy
        Rows("4:5").Select
        Selection.Insert Shift:=xlDown
        Rows("4:5").RowHeight = 15
        Range("B4").Font.Color = RGB(220, 230, 240)
        Range("B5").Font.ColorIndex = 2
        Application.EnableEvents = True
    avec le True à la fin c'est ok merci merci

  4. #4
    Membre averti
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Août 2015
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Août 2015
    Messages : 23
    Par défaut merci
    Tu es sur tous les fronts :-) merci encore

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2003] Lancer une macro quand on supprime une ligne
    Par nicoaix dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 02/12/2013, 16h08
  2. [XL-2003] Ne pas lancer une macro en cas de suppression de valeur
    Par Edaine dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 10/06/2011, 11h08
  3. [XL-2003] Lancer une macro si le curseur est dans la plage de cellules selectionnée
    Par dede tabby dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 23/01/2011, 11h42
  4. [XL-2003] lancer une macro quand une cells change
    Par bigboy dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/04/2009, 20h02
  5. [VBA/Excel]lancer une macro d'un autre document
    Par daniel_gre dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 19/05/2008, 15h37

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