Annuler une opération

B

Baroude

Guest
Bonjour à tous et à toutes,

J'ai créé un bouton avec une macro qui contient une fonction très simple qui est "Collage Formule". Cela me sert à copier et coller une formule (évidemment).

Or, mon problème est que lorsque je colle ma formule, je n'ai pas la possibilité de revenir en arrière (par Annuler ou Ctrl+Z).
Est-ce possible d'intégrer la "fonction" d'annulation dans ma macro ? ... ou p'têt que c'est pas possible....

Merci de votre aide
Bonne journée
 
S

sylvain

Guest
Bonjour,

Pour gérer les annulations et les répétitions il faut écrire le code qui doit se lancer en utilisant onundo. texte de l'aide d'XL :

OnUndo, méthode
Cette méthode définit le texte de la commande de menu Annuler et le nom de la procédure exécutée lorsque vous sélectionnez la commande Annuler (menu Edition) après l'exécution de la procédure qui définit cette propriété.

Syntaxe

expression.OnUndo(Text, Procedure)

expression Obligatoire. Expression qui renvoie un objet Application.

Text Argument de type String obligatoire. Texte qui suit la commande Annuler (menu Edition).

Procedure Argument de type String obligatoire. Nom de la procédure exécutée si vous sélectionnez la commande Annuler (menu Edition).

Remarques

Si une procédure n'utilise pas la méthode OnUndo, la commande Undo est désactivée.

La procédure doit utiliser les méthodes OnRepeat et OnUndo en dernier pour éviter le remplacement des procédures de répétition et d'annulation par les actions suivantes de la procédure.
OnUndo, méthode - Exemple

Cet exemple montre comment définir les procédures de répétition et d'annulation.

Application.OnRepeat "Repeat VB Procedure", _
"Book1.xls!My_Repeat_Sub"
Application.OnUndo "Undo VB Procedure", _
"Book1.xls!My_Undo_Sub"

A+
 

Discussions similaires

Statistiques des forums

Discussions
314 645
Messages
2 111 530
Membres
111 190
dernier inscrit
clmtj