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 :

Gestion d'erreur, équivalent du ctrl+z [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 681
    Par défaut Gestion d'erreur, équivalent du ctrl+z
    Bonjour,

    Je fais fichiers contenant des maccros qui sont ensuite utilisés par des utilisateurs plus ou moins compétant mais toujours créatif dès qu'il s'agit de générer des erreurs auxquelles je n'ai pas pensé.
    Pour éviter que ces erreurs ne rendent le fichier inutiliable par la suite et comme le ctrl+z ne marche pas pour les maccros j'aimerais en cas d'erreur charger la dernière sauvegarde du fichier? (sachant que je le sauvegarde en début de maccro) Y a-t-il une commande pour le faire?
    J'ai essayé un moyen détourné en fermant le fichier sans sauvegarde et en le réouvrant mais quand le fichier se ferme la maccro s'arrête.

    Merci d'avance.

  2. #2
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Bonjour !

    Oui c'est logique …

    L'astuce pourrait (note bien le conditionnel) être de rouvrir le classeur via la méthode OnTime
    juste avant de fermer le classeur avec un délai de deux secondes. Par contre à toi de t'organiser pour la reprise du code …

    Autre possibilité ne requérant pas la fermeture du classeur selon la taille des données est de les sauvegarder
    soit en mémoire dans une variable tableau soit dans un fichier texte
    soit pourquoi pas dans un classeur backup facilitant les copier / coller …

    _________________________________________________________________________________________________________
    Je suis Paris, Charlie, Bruxelles, …

  3. #3
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 681
    Par défaut
    Citation Envoyé par Marc-L Voir le message
    Bonjour !
    Oui c'est logique …
    J'y croyais moyennement mais j'avais pas d'autres idée
    L'astuce pourrait (note bien le conditionnel) de rouvrir le classeur via la méthode OnTime
    juste avant de fermer le classeur avec un délai de deux secondes. Par contre à toi de t'organiser pour la reprise du code …
    Merci. J'essayerais demain, pas de problème pour la reprise du code puisque je veux qu'il s'arrête.

  4. #4
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut



    Si tu ne veux rien déclencher via OnTime, il faut créer une procédure bidon sans ligne de code,
    juste les lignes Sub Bidon() & End Sub.

    Par contre si le classeur comporte un évènement Workbook_Open, il se lancera juste après la procédure bidon …

  5. #5
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 681
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub test()
    ThisWorkbook.Save
    Application.OnTime Now + TimeValue("00:00:02"), "MaMacro"
    ThisWorkbook.Close
    End Sub
     
    Sub MaMacro()
    Workbooks.Open Filename:=ThisWorkbook.Path & "\" & ThisWorkbook.Name
    End Sub
    Ca marche niquel. Tu peux enlever le conditionnel de ton post précédent

    Merci beaucoup

  6. #6
    Membre chevronné Avatar de Kiouane
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2016
    Messages
    198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2016
    Messages : 198
    Par défaut
    Halaster peux-tu nous expliquer en détail le fonctionnement, c'est intéressant comme astuce.

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

Discussions similaires

  1. gestion d'erreur et de transactions....
    Par Dge dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 08/02/2006, 22h20
  2. [Struts-Validator] Gestion d'erreurs
    Par sylvain_neus dans le forum Struts 1
    Réponses: 14
    Dernier message: 09/04/2004, 15h15
  3. [XSLT]Est ce qu'il y'a la gestion des erreur en xslt ?
    Par miloud dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 04/02/2004, 17h19
  4. [LG]tests pour la gestion d'erreur
    Par le 27 dans le forum Langage
    Réponses: 3
    Dernier message: 22/12/2003, 20h44
  5. [LG]gestion des erreurs
    Par frontin dans le forum Langage
    Réponses: 3
    Dernier message: 29/11/2003, 22h41

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