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 :

stopper une macro temporairement


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Inscrit en
    Avril 2007
    Messages
    1 247
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 1 247
    Par défaut stopper une macro temporairement
    Bonjour a tous et a toutes

    J'ai creer une macro, que l'on nommera macro1, qui agit sur un fichier.
    Apres que ce fichier soit traité par cette macro1, je dois intervenir manuellement pour apporter des modifications à ce fichier.
    Ensuite, j'ai crée une deuxième macro, que l'on nommera macro2, qui à son tour agit sur ce fichier.
    J'aimerais transferer la macro 2 à la suite de la macro 1 mais de telle manière que la macro 2 ne s'enclenche qu'à ma signal ( de type MsgBox).
    Mais là je ne sais pas faire

    En résumer la macro 2 ne sera fonctionnelle qu'aprés les modifications manuelles que j'aurais apporté au fichier
    Merci par avance

  2. #2
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Bonjour,

    En quoi consiste la modification manuelle ? Est-elle toujours la même ? Si oui on pourrait imaginer d'exécuter la macro2 via l'évènement Change de la feuille

    Si non, via une MsgBox cela ne fonctionnera pas mais éventuellement via un UserForm que tu afficherais en fin de macro1 et en mettant sa propriété ShowModal sur False cela permet de pouvoir modifier la feuille, ensuite via un bouton sur ce UserForm tu lances la macro2.

  3. #3
    Membre éprouvé
    Inscrit en
    Avril 2007
    Messages
    1 247
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 1 247
    Par défaut Bonjour,
    Merci FRING, d'avoir repondu mais je dois avouer que je ne connais pasUserForm
    En ce qui concerne les modifications manuelles, celles ci ne sont jamais les memes..
    Fring, je serais interesse par ton idee en passant par UserForm et la propriete ShowModal sur False (que je connais pas non plus ).
    Pourrais tu me decrire la demarche a suivre..

    A plus Fring

  4. #4
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    On va essayer de procéder par étape
    • dans l'éditeur de Visual Basic, menu Insertion --> UserForm
    • clic droit sur le UserForm1 qui vient d'être créé --> Propriétés
    • dans la fenêtre de gauche (Propriétés UserForm1) mettre la propriété ShowModal sur False
    • via la boîte à outils (si elle n'apparaît pas à l'écran : menu Affichage --> Boîte à outils) insère un Bouton de Commande sur ton UserForm1
    • dans la fenêtre de gauche (Propriétés CommandButton1) tu peux modifier la propriété Caption qui est le nom qui apparaît sur le bouton
    • clic droit sur ce bouton --> Code (voir ci-dessous)

    Code du Bouton : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub CommandButton1_Click()
    Macro2
    Unload Me
    End Sub

    En fin de ta Macro 1, tu insères la ligne de code suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub Macro1()
    'ton code...
    '...
    '...
    UserForm1.Show '<-- ligne à ajouter pour faire apparaître le UserForm
    End Sub
    Eventuellement, aussi bien pour le UserForm que pour le Bouton, tu peux également modifier les propriétés de taille, de couleur, etc...
    Tu peux également ajouter un label sur ton UserForm avec un texte.

    Pour de plus amples infos concernant l'utilisation d'un UserForm et de ses Contrôles, je t'invite à jeter un oeil sur les deux tutos suivants :
    Utiliser les UserForm
    Utiliser les Contrôles dans un UserForm

  5. #5
    Membre éprouvé
    Inscrit en
    Avril 2007
    Messages
    1 247
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 1 247
    Par défaut bonjour'
    Merci Fring,

    Je sais ce qu'il me reste a faire.. a me jeter corps et ame dans ce nouveau univers de UserForm.
    je te tiendrais au courant de l'evolution de mes capacites a comprendre UserForm

    A plus Fring

  6. #6
    Membre éprouvé
    Inscrit en
    Avril 2007
    Messages
    1 247
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 1 247
    Par défaut salut
    j'ai suivi tes etapes et cela commence tres bien..la boite de dialogue s'ouvre et la macro 2 fonctionne bien .
    J'ai cree une boite de dialgue userfom simple avec comme 1 seul bouton de commade intitule " CONTINUER"..
    Mais, j'aimerais creer deux bouton de commandes dont l'un serait :"completer le tableau" et la je resterait dans la macro 1 .Puis lorsque cette etape sera finir..je cliquerais sur le deuxieme bouton de commande qui s'intitulerais "EXTRACTION DONNEES".

    Fring penses tu que cela est realisable..

  7. #7
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Citation Envoyé par facteur Voir le message
    Mais, j'aimerais creer deux bouton de commandes dont l'un serait :"completer le tableau" et la je resterait dans la macro 1
    Je ne comprend pas ce que tu souhaites faire avec ce bouton, que doit-il se passer lorsqu'on clique sur ce bouton ?

    Lorsque tu dis "là je resterais dans la macro 1" en réalité tu n'y es déjà plus, le UserForm s'affiche lorsque la macro 1 est terminée et permet simplement via un bouton d'exécuter la macro 2

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

Discussions similaires

  1. [AC-2007] Vérification d'une liste déroulante et stopper une macro
    Par Crachover dans le forum VBA Access
    Réponses: 2
    Dernier message: 11/06/2010, 20h08
  2. [AC-2002] Stopper une macro
    Par volganne dans le forum VBA Access
    Réponses: 2
    Dernier message: 04/06/2010, 11h11
  3. [XL-2003] stopper une macro
    Par bosk1000 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/10/2009, 15h36
  4. Stopper une macro sous certaines conditions
    Par joquetino dans le forum VBA Access
    Réponses: 3
    Dernier message: 04/09/2008, 18h02
  5. [vbexcel]Comment stopper une macro sans la planter.
    Par Mugette dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 30/11/2005, 14h45

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