Compartir a través de


Deshacer y rehacer una acción en un cuadro de texto o un cuadro combinado

En el ejemplo siguiente se muestra cómo deshacer o rehacer modificaciones en un TextBox en el área de texto de un control ComboBox. En el ejemplo se comprueba si puede producirse una operación de deshacer o rehacer y se realiza la acción correspondiente. El ejemplo usa las propiedades CanUndo y CanRedo y los métodos UndoAction y RedoAction.

Para utilizar este ejemplo, copie el código en el Editor de secuencias de comandos de un formulario. Para ejecutar el código debe abrir el formulario con el fin de que se produzca el evento Open. Asegúrese de que el formulario contiene:

  • Un control TextBox denominado TextBox1.

  • Un control ComboBox denominado ComboBox1.

  • Dos controles CommandButton denominados CommandButton1 y CommandButton2.

Dim UserForm1 
 
Sub CommandButton1_Click() 
 If UserForm1.CanUndo = True Then 
 UserForm1.UndoAction 
 MsgBox "Undid IT" 
 Else 
 MsgBox "No undo performed." 
 End If 
End Sub 
 
Sub CommandButton2_Click() 
 If UserForm1.CanRedo = True Then 
 UserForm1.RedoAction 
 MsgBox "Redid IT" 
 Else 
 MsgBox "No redo performed." 
 End If 
End Sub 
 
Sub Item_Open() 
 Set UserForm1 = Item.GetInspector.ModifiedFormPages("P.2") 
 Set TextBox1 = UserForm1.Controls("TextBox1") 
 Set ComboBox1 = UserForm1.Controls("ComboBox1") 
 Set CommandButton1 = UserForm1.Controls("CommandButton1") 
 Set CommandButton2 = UserForm1.Controls("CommandButton2") 
 
 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

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.