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 :

arréter une macro et initialiser par une macro


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 223
    Points : 72
    Points
    72
    Par défaut arréter une macro et initialiser par une macro
    Bonjour,
    J'ai une macro1 qui tourne toutes les 10 secondes et je veux en lancer une seconde, de temps en temps, par un raccourci clavier.
    Pour que tout fonctionne bien, je dois arréter provisoirement la macro1.
    comment intégrer, au début de la macro2, l'ordre d'arréter la macro1 et éliminer le fameux message "impossible d'executer une macro en mode arret" en réinitialisant automatiquement?
    ça me semble etre comme le serpent qui se mord la queue...
    merci pour votre aide.
    JP

  2. #2
    Membre éprouvé
    Avatar de fred65200
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 901
    Points : 1 207
    Points
    1 207
    Par défaut
    bonjour,

    si ta macro est déclenchée par une méthode OnTime,

    dans ta seconde macro, au début, essaie

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.OnTime NextTime, "Macro1", schedule:=False
    non testée.

    @+

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 223
    Points : 72
    Points
    72
    Par défaut
    ok, si je comprends bien, en rajoutant une temporisation pour laisser l'arret se faire. et toujours si je comprends bien, il doit etre possible de relancer la macro1 ensuite...
    je teste et je vous tiens au courant du résultat.
    merci!

  4. #4
    Membre éprouvé
    Avatar de fred65200
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 901
    Points : 1 207
    Points
    1 207
    Par défaut
    re
    j'ai oublié de préciser
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NextTime = Now + TimeValue("00:00:01")
    et n'oublie pas de mettre onerror resume next avant de stopper ton timer.

    @+

  5. #5
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Hello,

    tu peux utiliser une variable booléenne de blocage ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Public blnBloquerMacro1 As Boolean
    et conditionner ton code de toutes les 10 secondes sur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Not blnBloquerMacro1 Then
    Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème
    12 tutoriels Access



  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 223
    Points : 72
    Points
    72
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.OnTime NextTime, "miseajour"
    fonctionne
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.OnTime NextTime, "miseajour", schedule:=False
    ne fonctionne pas
    j'avoue ne pas comprendre pourquoi ce paramètre entraine une erreur
    la variable booléenne semble effectivement une autre solution

Discussions similaires

  1. [XL-2010] Reprise d'une macro 1 après exécution d'une macro 2 appelée par la macro 1
    Par julio44 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 02/07/2014, 12h32
  2. [XL-2007] Récupérer l'adresse d'une cellule sans passer par une macro
    Par Runsh63 dans le forum Excel
    Réponses: 4
    Dernier message: 28/04/2014, 15h09
  3. Simplification de macro en passant par une boucle.
    Par chpierro62 dans le forum Général VBA
    Réponses: 0
    Dernier message: 06/01/2012, 12h17
  4. [OpenOffice][Texte] [MACRO] Remplacer texte par une image
    Par Ry_Yo dans le forum OpenOffice & LibreOffice
    Réponses: 1
    Dernier message: 24/10/2011, 10h59

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