Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Отменяет последнюю единицу отмены, если единица отмены может быть отменена.
Синтаксис
expression. Отменить
выражение: переменная, представляющая объект Application.
Возвращаемое значение
Отсутствует
Примечания
Используйте метод Undo для отмены действий по одной единице отмены за раз.
Количество вызовов метода Undo зависит от того, выполняется ли код в область открытого блока отмены. Код выполняется в область открытого блока отмены, если это:
Макрос или надстройка, вызываемые пользовательским интерфейсом Microsoft Visio.
В обработчике событий, реагирующего на событие Visio, отличное от события VisioIsIdle .
В созданном пользователем область отмены.
Если код не выполняется в область открытого блока отмены, он может вызвать метод Undo для каждой единицы отмены в стеке отмены Visio. Можно задать максимальное количество единиц в стеке отмены (по умолчанию — 20) на вкладке Дополнительно диалогового окна Параметры Visio (перейдите на вкладку Файл и выберите пункт Параметры). Если количество вызовов метода Undo превышает количество единиц отмены в стеке, никаких действий не выполняется и метод Undo не вызывает исключения.
Если код выполняется в область открытого блока отмены, он может вызывать метод Undo один раз для каждой операции в блоке open undo. При наличии дополнительных вызовов метода Undo он вызывает исключение и не выполняет никаких действий. Например, если код в макросе выполняет две операции, он может вызвать метод Undo дважды. Если макрос вызывает метод Undo в третий раз, метод Undo создает исключение.
Код, вызывающий метод Undo из область блока отмены, не может вызвать метод Redo для отмены действия. Метод Redo можно вызывать только при отсутствии открытых единиц отмены.
Метод Undo также вызывает исключение, если экземпляр Visio в настоящее время выполняет отмену или повтор. Чтобы определить, является ли экземпляр Visio отменой или повтором, используйте свойство IsUndoingOrRedoing .
Метод Undo можно вызвать из обработчика событий VisioIsIdle , так как событие VisioIsIdle может вызываться только в том случае, если свойство IsUndoingOrRedoing имеет значение False. Вы также можете вызвать метод Undo из кода, не вызываемого экземпляром Visio, например из кода, вызываемого из редактора Visual Basic или из внешней программы.
Большинство действий можно отменить, но не все. Используйте метод Redo , чтобы обратить вспять эффект метода Undo .
Пример
Этот макрос Microsoft Visual Basic для приложений (VBA) показывает, как отменить и повторить действия.
Public Sub Undo_Example()
Dim vsoShape As Visio.Shape
'Draw a rectangle, use Undo to delete it, and
'then use Redo to redraw it.
Set vsoShape = ActivePage.DrawRectangle(1, 5, 5, 1)
'Delete the shape.
Visio.Application.Undo
'Bring it back.
Visio.Application.Redo
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.