Boutons Annuler/Rétablir dans Userform

Enigme

XLDnaute Nouveau
Bonjour,
je voudrais pouvoir, dans un UserForm Excel, qui est un formulaire de saisie, créer les boutons annuler (CTRL + Z) et rétablir (CTRL + Y) comme dans les applications en générale.
c'est faisable ? Il faut gérer un historique des actions faites dans le formulaire ?
J'espère avoir été clair ;-)
Merci
 

tototiti2008

XLDnaute Barbatruc
Re : Boutons Annuler/Rétablir dans Userform

Bonjour Enigme,

Sans rien faire, Ctrl+Z et Ctrl+Y fonctionnent dans un Userform

une copie de l'aide VBA

CanUndo, CanRedo, propriétés, UndoAction, RedoAction, méthodes, exemple

L'exemple suivant montre comment annuler ou rétablir les modifications effectuées dans une zone de texte ou dans la partie texte d'un contrôle ComboBox. Il vérifie si l'opération d'annulation ou de rétablissement est possible, puis il exécute l'action appropriée. Il utilise les propriétés CanUndo et CanRedo, ainsi que les méthodes UndoAction et RedoAction.

Pour utiliser cet exemple, copiez le code suivant dans la partie Déclarations d'une feuille et vérifiez que celle-ci contient :

un contrôle TextBox nommé TextBox1,


un contrôle ComboBox nommé ComboBox1,


deux contrôles CommandButton nommés CommandButton1 et CommandButton2.
Private Sub CommandButton1_Click()
If UserForm1.CanUndo = True Then
UserForm1.UndoAction
MsgBox "Undid IT"
Else
MsgBox "No undo performed."
End If
End Sub

Private Sub CommandButton2_Click()
If UserForm1.CanRedo = True Then
UserForm1.RedoAction
MsgBox "Redid IT"
Else
MsgBox "No redo performed."
End If
End Sub

Private Sub UserForm_Initialize()
TextBox1.Text = "Type your text here."

ComboBox1.ColumnCount = 3
ComboBox1.AddItem "Choice 1, column 1"
ComboBox1.List(0, 1) = "Choice 1, column 2"
ComboBox1.List(0, 2) = "Choice 1, column 3"

CommandButton1.Caption = "Undo"
CommandButton2.Caption = "Redo"
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 465
Messages
2 088 654
Membres
103 906
dernier inscrit
mefodden