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 :

Comment annuler les effets d'une macro sur les feuilles?


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 66
    Par défaut Comment annuler les effets d'une macro sur les feuilles?
    Voila mon souci: je suis un bricoleur sur excel et je souhaite créé une fonction annuler pour annuler les effets de mise en page d'une macro.
    Merci de vos réponses à venir.

  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 et bienvenue sur le forum,

    Il n'y a pas de fonction Undo pour une macro, la seule façon de réaliser cela est de créer une copie temporaire de la feuille en question.

    En gros :
    • avant l'exécution de la macro, vérifier si une sauvegarde de la feuille a déjà été réalisée, si oui la supprimer
    • faire une sauvegarde de la feuille en fin de classeur
    • à la fermeture du classeur éventuellement supprimer la feuille sauvegardée

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 66
    Par défaut merci
    merci fring je vais tenter le coup

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Bonjour

    Si je peux me permettre de nuancer les propos de fring...

    Attention que la copie temporaire d'une feuille, puis la suppression de la feuille originale et la récupération de la copie, ca va foutre un fameux bo*** dans les cellules des autres feuilles qui sont liées par formules à la feuille qui sera détruite... => problèmes de #REF! à tour de bras!!, dans les formules, les plages nommées, les graphiques et TCD liés, ... (Et je ne parle pas d'une macro qui modifierait plusieurs feuilles...)

    Donc, si l'idée paraît séduisante, c'est à mon avis à utiliser avec tellement de prudence que pour moi, cette technique n'est pas valable pour 9.999 classeurs sur 10.000 ... Mais ce n'est que mon avis...

    La seule façon vraiment fiable, c'est d'enregistrer TOUT le classeur en copie avant que la macro touche à quoi que ce soit... => très lourd...

    Donc pour moi, il n'y a pas de remède miracle. Quand je dois vraiment m'assurer de pouvoir revenir en arrière, je place une macro à l'ouverture qui réalise une sauvegarde. si pb durant le traitement, on perd ce qui a été fait entre l'ouverture du classeur et le moment où le problème s'est posé, et on récupère la copie faite à l'ouverture...
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2004
    Messages : 3
    Par défaut
    regarde du cote de john walkenbach

    http://www.j-walk.com/ss/pup/pup6/features.htm

    il a fait un add in qui a une fonction undo

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 66
    Par défaut Undo pour macro une chimere?
    Je repars sans solutions miracle, je vais tenter l'annulation en inversant chaque effets de la macro. Choub add in est pas mal mais mon fichier doit pouvoir me servir sur n'importe quel pc donc impossible.
    Merci

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

Discussions similaires

  1. Application d'une macro sur les variables de ma base
    Par étudiant11 dans le forum Macro
    Réponses: 15
    Dernier message: 05/03/2015, 12h38
  2. Réponses: 2
    Dernier message: 09/03/2009, 14h28
  3. Filtrer une liste sur les valeurs d'une colonne
    Par julien.63 dans le forum SharePoint
    Réponses: 3
    Dernier message: 13/02/2009, 08h43
  4. faire une croix sur les pics dans une figure
    Par jena dans le forum Signal
    Réponses: 5
    Dernier message: 28/11/2008, 18h04
  5. Trier les nombres d'une variable sur les virgules
    Par Emotion dans le forum Langage
    Réponses: 2
    Dernier message: 27/09/2007, 14h18

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