Un code VBA pour faire un retour arrière, un peu comme le "CTRL + Z"

Bonjour,

Croyez-vous possible de faire un code VBA, ou autres si vous avez d'autres idées, pour faire un retour arrière, un peu comme le "CTRL + Z". Exemple : je supprime une ligne et je m'aperçois que j'ai fait une erreur et voudrai réafficher cette ligne. Ou je supprime un élément quelconque et je veux le rétablir, etc, etc, etc,

Le tout dans ce fichier Excel :

Merci pour la lecture de ce sujet :-)))))))

Bonne journée :-)))))))))))))))))))

Bonjour,

Si vous souhaitez annuler vos actions manuelles, il suffit d'appuyer sur CTRL+Z... je ne vois pas trop l'intérêt de VBA ?

Si c'est pour annuler l'exécution d'un code VBA… Non, ce n'est pas possible. Enfin ça peut l'être mais c'est très compliqué. En général on met plutôt en place des gardes-fous avant de cliquer sur le bouton et/ou de lancer l'exécution d'une macro. C'est plus simple.

Bonjour Saboh et merci pour ta réponse,

Oui c'est pour du VBA car sinon ça serait trop simple ;-))))) Tout le monde connaît le Ctrl Z ;-))))))))

Donc trop compliqué ?

BsAlv m'avait fait comprendre indirectement le côté compliqué de l'affaire ;-)))))

Encore merci

Bonne journée :-))))))))))))))

Oui complexe et surement pas nécessaire.

Comment souvent il faut prendre du recul et réfléchir à l'objectif final plutôt qu'au moyen :

Puisque vous voulez annuler, c'est que vous avez fait une mauvaise manip. Cette manip n'est-elle pas annulable avant même d'avoir été lancée ? Il suffirait de vérifier certaines conditions avant de lancer la macro pour éviter des modifications indésirables.

Si vous ouvrez le fichier, vous verrez que BsAlv a mis bcp de garde-fous un peu partout mais malgré tout, avec tous les tests effectués, j'ai décelé un grand nombre de failles. Ca fait un mois que je teste et vous imaginez bien que si je demande un truc pareil c'est que j'en aurais l'utilité.

Donc nécessaire !!!!!!!!!!!!!!!!!!!!!!!!! Mais impossible visiblement. Dommage !!!!!!!

Besoin d'un exemple concret ?

Je veux supprimer plusieurs lignes en même temps et je m'aperçois qu'une d'entre elles ne devaient pas l'être. Je ne peux pas utiliser le ctrl Z car les lignes ont des colonnes liées à des codes VBA, ou peut-être même les lignes, je ne suis pas un spécialiste. Et patatra, pour annuler, je suis obligé de quitter le fichier sans sauvegarder pour rétablir mes erreurs... Pour certains objets, c'est tt pareil, etc, etc

re, solution primitive, on sauvegarde un backup à chaque changement avec des intervalles minimales de 15 secondes. Comme ça, on aura 10 "backups", càd "Vodoraix_Backup_1.xlsb" à "Vodoraix_Backup_10.xlsb" pour minimum les dernières 150 secondes (2.5 minutes). Pour le moment, c'est juste l'idée et vérifier si tout cela n'embêtera pas le fonctionnement normal du fichier. (au moment du sauvegarde, on verra "Backup" quelques moments dans le statusbar.) La date&heure des 10 derniers backups, on les voit dans B27:B26" de "Dossiers ..."

Bonsoir Bart' et merci beaucoup :-)))))))))))))))))))))))

J'ai testé. Si j'ai bien compris, à chaque fois que je fais une action, c'est enregistré en backup

Et qd j'atteins le 11ème changement, le premier backup est écrasé par ce 11ème.

C'est une super idée. Juste quand je veux revenir à un backup, il faudra que j'ouvre l'un après l'autre jusqu'à trouver celui qui me convient ;-))))))))

MErci bcp pour ton activité et ton hardeur sans faille :-)))))))))))))))))))))))))

Je vais le tester toute la journée demain, au travail :-)))))))

Bonne soirée Bart' :-)))))))))))))))))))))))

celui en vert, c'est le plus récent, mais peut-être tu veux l'avant-dernier ou encore un autre ... . Et puis tu le renommes et t'es reparti.

Cette sorte de solutions ne sont pas très satisfaisante et on la désactive souvent àprès un certain temps. On peut aussi augmenter le temps entre chaque sauvegarde (maintenant 15 secondes vers une minute ou ...). Au moment du sauvegarde, Excel est "out" pendant environ 0.5 à 1 seconde et si tu fais un changement pendant cette période, je ne dis pas qu'il sera traité d'une manière fausse mais tu te sens un peu confus, tu penses, tiens que se passe-t-il. Donc si tu fais tes changements comme un grand-père de 99 ans, aucune problème, par contre si tu le fais aveugle et à toute vitesse, comme une secrétaire de 20 ans, alors, un moment, tu pense qu'excel a raté l'avant-dernier changement et qu'excel n'est pas capable à suivre.

Bon, il faut l'essayer, mais à mon avis c'est une solution suboptimale pour résoudre un problème humain.

Bonsoir Bart',

Le pb humain, c'est nous, tu as raison, on est loin d'une secrétaire dactylographe pro de 20 ans :-))))))))) lolllllllllllllllllllll

Les couleurs, vertes et autres me conviennent ;-))))

Je dois être un grand-père de 99 ans car j'ai pas subi de désagrément today :-))))))))))))

Tiens ! C'est rigolo, je suis pile-poile ou quasi entre 20 & 99 puisque 57 ans :-)))

Je te tiens au courant

MErci encore

Bonne soirée :-)))))))))))))))))))

Rechercher des sujets similaires à "code vba retour arriere peu comme ctrl"