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 :

Désactive une macro événementielle lors de l’exécution woorkbook_open


Sujet :

Excel

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Assistante de direction
    Inscrit en
    Août 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Assistante de direction
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2016
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Désactive une macro événementielle lors de l’exécution woorkbook_open
    Bonjour,

    peut être une solution a-t-elle déjà été donné mais après une matinée de recherche sur un certains nombre de forums je ne trouve pas de solution.

    Mon problème :
    à l'ouverture de mon fichier lancement de macros jusque là ok
    dans mes feuilles elles ont toutes Worksheet_SelectionChange qui me permet de bloquer des cellules pour l'utilisateur du fichier

    seulement ma macro d'ouverture à besoin d'intervenir sur ces cellules bloquées !

    je ne peux pas utiliser Application.EnableEvents qui vient stopper la macro workbookopen !

    auriez vous une solution pour désactiver juste une macro événementielle en particulier et la réactiver à la fin de la macro lancer à l'ouverture ?

    en cherchant sur divers forums, il apparait qu'une solution pourrait être envisagé avec une variable de type Boolean ? ... seulement à quel endroit la mettre dans mes macros ??

    Merci pour l'aide que vous pourrez m'apporter.

  2. #2
    Membre habitué Avatar de LG-69
    Homme Profil pro
    Analyste statisticien
    Inscrit en
    Juillet 2014
    Messages
    162
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste statisticien

    Informations forums :
    Inscription : Juillet 2014
    Messages : 162
    Points : 189
    Points
    189
    Par défaut
    Bonjour,

    Je ne suis pas un expert en VBA mais peut-être une idée :

    - En tout début de ta macro d'ouverture tu mets un boolean à true (pour dire que tu es dans ta macro d'ouverture)
    - Dans ta macro que tu souhaites bloquer tu mets un test en tout début : si boolean est à true je sors de la macro direct
    - En toute fin de ta macro d'ouverture tu mets le même boolean à false (pour dire que tu sors de ta macro d'ouverture)

    Ca n'empêchera pas la macro événementielle de se lancer mais elle sera court-circuitée

  3. #3
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Application.EnableEvents
    https://msdn.microsoft.com/fr-fr/lib.../ff821508.aspx

    Mettre à False avant le Open.
    Remettre à True juste après.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  4. #4
    Futur Membre du Club
    Femme Profil pro
    Assistante de direction
    Inscrit en
    Août 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Assistante de direction
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2016
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Citation Envoyé par Menhir Voir le message
    Application.EnableEvents
    https://msdn.microsoft.com/fr-fr/lib.../ff821508.aspx

    Mettre à False avant le Open.
    Remettre à True juste après.
    Bon beh c'est dans ces moments où on se sent très nulle ! car je l'avais fait mais certainement pas au bon endroit ! tout à l'air de bien se lancer après plusieurs tests et mes cellules sont bien bloqués à la fin de mes macros d'ouverture !

    merci encore !

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

Discussions similaires

  1. Génération d'une macro événementielle
    Par jcgonzales dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 05/10/2009, 16h02
  2. [AC-2000] Execution d'une macro Access lors d'une importation Excel
    Par Nicolas Plan dans le forum Access
    Réponses: 7
    Dernier message: 23/04/2009, 14h52
  3. [AC-2000] Execution d'une macro Access lors d'une importation Excel
    Par Nicolas Plan dans le forum Modélisation
    Réponses: 2
    Dernier message: 22/04/2009, 10h54
  4. erreur d'execution '13' dans une macro Excel lors du passage 2003->2007
    Par Bobsinglar dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 07/10/2008, 15h16
  5. Rendre une macro Active lors de la réception de nouveau(x) mail(s)
    Par thomas.sculfort dans le forum VBA Outlook
    Réponses: 6
    Dernier message: 09/06/2007, 12h45

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