Отмена и повтор действия в текстовом поле или поле со списком
В следующем примере показано, как отменить или повторить редактирование текста в TextBox или в текстовой области ComboBox. В нем проверяется возможность отмены или повтора редактирования, а затем выполняется нужное действие. В примере используются свойства CanUndo и CanRedo, а также методы UndoAction и RedoAction.
Чтобы использовать этот пример, скопируйте пример кода в редактор скриптов формы. Чтобы запустить код, необходимо открыть форму, чтобы активировать событие Open . Убедитесь, что эта форма содержит:
Элемент TextBox с именем TextBox1.
Элемент ComboBox с именем ComboBox1.
Два элемента управления CommandButton с именами CommandButton1 и 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
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.