Macro pas à pas : création, pause, reprendre, corriger
BAUDECLE
Messages postés
30
Date d'inscription
Statut
Membre
Dernière intervention
-
Gyrus Messages postés 3334 Date d'inscription Statut Membre Dernière intervention -
Gyrus Messages postés 3334 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Avec Excel 2003, je tente de me remettre aux macros mais en restant modeste ! Donc j'utilise le "pas à pas" qui me convient parfaitement. Sauf que si je veux modifier, suspendre la création, ou la poursuivre je n'y arrive plus.
A chaque fois, je me retrouve dans la boîte de dialogue VBA qui reste relativement obscure pour moi.
J'ai le souvenir de pouvoir mettre la création en pause et de pouvoir reprendre le pas à pas, voire de pouvoir corriger la macro mais toujours sur le mode pas à pas.
Pour bien illustrer mon propos, voici un exemple : je travaille à la maison, je crée la macro, je me l'envoie au bureau. Là, je souhaite poursuivre la macro, en pas à pas, pour enregistrer mes feuilles de calcul dans les bons dossiers. (j'espère être claire....)
Pouvez-vous m'indiquer, SVP, si cela est encore possible et par quel moyen ? Je vous en remercie par avance.
Avec Excel 2003, je tente de me remettre aux macros mais en restant modeste ! Donc j'utilise le "pas à pas" qui me convient parfaitement. Sauf que si je veux modifier, suspendre la création, ou la poursuivre je n'y arrive plus.
A chaque fois, je me retrouve dans la boîte de dialogue VBA qui reste relativement obscure pour moi.
J'ai le souvenir de pouvoir mettre la création en pause et de pouvoir reprendre le pas à pas, voire de pouvoir corriger la macro mais toujours sur le mode pas à pas.
Pour bien illustrer mon propos, voici un exemple : je travaille à la maison, je crée la macro, je me l'envoie au bureau. Là, je souhaite poursuivre la macro, en pas à pas, pour enregistrer mes feuilles de calcul dans les bons dossiers. (j'espère être claire....)
Pouvez-vous m'indiquer, SVP, si cela est encore possible et par quel moyen ? Je vous en remercie par avance.
A voir également:
- Excel pause macro
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
2 réponses
Bonjour,
Apparemment, tu fais une confusion entre création et exécution de macro.
Lorsque tu écris des lignes de code, tu es en mode création. La procédure ne s'exécute pas et il n'y a pas d'effet sur tes données.
Lorsque tu fais du pas à pas, tu en mode exécution. La procédure s'exécute ligne après ligne et tu peux constater les effets du traitement.
Tu ne peux pas envoyer au bureau une procédure en cours d'exécution.
Pour poursuivre un traitement commencé chez toi, il faut que tu prévoies d'enregistrer l'état de ce traitement au moment de l'interruption puis réutiliser cet enregistrement d'état pour reprendre ta tache.
Exemple : je souhaite modifier plusieurs feuilles. Dans mon code, je prévoie d'enregistrer systématiquement dans une plage dédiée le nom de la feuille qui a été traitée.
Si ma procédure ne traite que les feuilles qui ne sont pas notées dans cette plage, je peux faire une interruption d'exécution et reprendre le traitement plus tard ... ou ailleurs.
A+
Apparemment, tu fais une confusion entre création et exécution de macro.
Lorsque tu écris des lignes de code, tu es en mode création. La procédure ne s'exécute pas et il n'y a pas d'effet sur tes données.
Lorsque tu fais du pas à pas, tu en mode exécution. La procédure s'exécute ligne après ligne et tu peux constater les effets du traitement.
Tu ne peux pas envoyer au bureau une procédure en cours d'exécution.
Pour poursuivre un traitement commencé chez toi, il faut que tu prévoies d'enregistrer l'état de ce traitement au moment de l'interruption puis réutiliser cet enregistrement d'état pour reprendre ta tache.
Exemple : je souhaite modifier plusieurs feuilles. Dans mon code, je prévoie d'enregistrer systématiquement dans une plage dédiée le nom de la feuille qui a été traitée.
Si ma procédure ne traite que les feuilles qui ne sont pas notées dans cette plage, je peux faire une interruption d'exécution et reprendre le traitement plus tard ... ou ailleurs.
A+
Bonsoir Gyrus,
Non, je ne pense pas confondre exécution et création mais j'ai dû mal expliquer ma demande (pas toujours facile de donner les termes les mieux appropriés lorsqu'on tatonne !).
Ce que je voulais dire, est que je commence la création de ma macro à la maison (pas le temps de faire sur place au bureau....), je m'envoie le fichier et au bureau, je finalise la création avec des trucs du genre "enregistrer sous", nommer le fichier dans le bon dossier.
Sauf que je réussis à faire des petites macros toute simplette que en pas à pas et dès que je tente de le reprendre ça me renvoie à cette fenêtre avec toutes ces commandes au vocabulaire technique.... D'où ma question, n'y a-t-il pas un menu où l'on peut reprendre le mode création et finir la macro ? De même, j'y travaille un temps donné, je dois passer à autre chose et je veux reprendre où j'en étais pour la finir.
J'espère avoir pu être plus claire ?.....
Dans tous les cas, merci beaucoup quand même.
Bénédicte
Non, je ne pense pas confondre exécution et création mais j'ai dû mal expliquer ma demande (pas toujours facile de donner les termes les mieux appropriés lorsqu'on tatonne !).
Ce que je voulais dire, est que je commence la création de ma macro à la maison (pas le temps de faire sur place au bureau....), je m'envoie le fichier et au bureau, je finalise la création avec des trucs du genre "enregistrer sous", nommer le fichier dans le bon dossier.
Sauf que je réussis à faire des petites macros toute simplette que en pas à pas et dès que je tente de le reprendre ça me renvoie à cette fenêtre avec toutes ces commandes au vocabulaire technique.... D'où ma question, n'y a-t-il pas un menu où l'on peut reprendre le mode création et finir la macro ? De même, j'y travaille un temps donné, je dois passer à autre chose et je veux reprendre où j'en étais pour la finir.
J'espère avoir pu être plus claire ?.....
Dans tous les cas, merci beaucoup quand même.
Bénédicte
Je ne comprends pas ce que tu entends par "création d'une macro en pas à pas".
Je ne connais que l'exécution d'une macro en pas à pas.
Si je te suis bien, tu utilises l'enregistreur pour créer tes macros.
A priori, tu ne travailles pas avec l'éditeur (ce que tu appelle "fenêtre avec toutes ces commandes au vocabulaire technique".
Et tu souhaiterais pouvoir reprendre l'enregistrement d'une macro après avoir arrêté l'enregistrement.
C'est bien cela ?
Je ne connais que l'exécution d'une macro en pas à pas.
Si je te suis bien, tu utilises l'enregistreur pour créer tes macros.
A priori, tu ne travailles pas avec l'éditeur (ce que tu appelle "fenêtre avec toutes ces commandes au vocabulaire technique".
Et tu souhaiterais pouvoir reprendre l'enregistrement d'une macro après avoir arrêté l'enregistrement.
C'est bien cela ?
Merci, j'ai regardé et je devrais y trouver des solutions mais ceci (à première vue me fait repasser par la fenêtre avec les lignes VBA...).
Je pense que votre réponse induit, que l'on ne peut tout simplement, en passant par le menu excel de la feuille à laquelle on a rattaché la macro trouver "reprendre la macro", "poursuivre la macro" ou encore "suspendre et enregistrer la macro" ?
Et encore merci de l'attention aux "idiots" du VBA dans mon genre :) Mais je pompe....
Bénédicte
eric
Et j'espérais avoir justement été plus claire et je pense faire la distinction entre création et exécution, au moins dans la mesure de ma moindre et simple expérience pour en avoir déjà fait, puis de les avoir exécutées.
Je vais tenter d'être plus claire, je commence à créer ma macro à l'aide du pas à pas, je suis interrompue ou je ne peux la finir sur le même poste donc je l'enregistre où j'en suis. Puis, je veux terminer la création de ma macro, et là je veux donc reprendre où j'en étais pour la terminer mais toujours en pas à pas.
Ensuite, qu'en j'en aurais besoin je la lancerai, une fois que j'aurais rafraîchi les nouvelles données que j'aurais à traiter.
Merci
Bénédicte