Поделиться через


Метод Document.Undo (Publisher)

Отменяет последнее действие или указанное количество действий. Соответствует списку элементов, который отображается при нажатии стрелки рядом с кнопкой Отмена на стандартной панели инструментов.

Синтаксис

expression. Отмена (количество)

Выражение Переменная, представляющая объект Document .

Параметры

Имя Обязательный или необязательный Тип данных Описание
Count Необязательный Long Указывает количество действий, которые необходимо отменить. Значение по умолчанию — 1. Если этот параметр пропущен, будет отменено только последнее действие.

Замечания

При вызове при отсутствии действий в стеке отмены или если число действий, находящихся в стеке, больше количества действий, которые в данный момент находятся в стеке, метод Undo отменит как можно больше действий и проигнорирует остальные.

Максимальное количество действий, которые можно отменить в одном вызове отмены , составляет 20.

Пример

В следующем примере метод Undo используется для отмены действий, которые не соответствуют определенным условиям.

Часть 1 примера добавляет прямоугольную фигуру выноски на четвертую страницу активной публикации, а текст добавляется в выноску. Этот процесс создает три действия.

Часть 2 примера проверяет, является ли шрифт текста, добавленного в выноску, Verdana. В противном случае метод Undo используется для отмены всех доступных действий (значение свойства UndoActionsAvailable используется для указания отмены всех действий). Это очищает все действия из стека. Затем добавляется новая фигура прямоугольника и текстовый кадр, а текстовый фрейм заполняется текстом Вердана.

Dim thePage As page 
Dim theShape As Shape 
Dim theDoc As Publisher.Document 
 
Set theDoc = ActiveDocument 
Set thePage = theDoc.Pages(4) 
 
With theDoc 
 ' Part 1 
 With thePage 
 ' Setting the shape creates the first action 
 Set theShape = .Shapes.AddShape(msoShapeRectangularCallout, _ 
 75, 75, 120, 30) 
 ' Setting the text range creates the second action 
 With theShape.TextFrame.TextRange 
 ' Setting the text creates the third action 
 .Text = "This text is not Verdana." 
 End With 
 End With 
 
 ' Part 2 
 If Not thePage.Shapes(1).TextFrame.TextRange.Font.Name = "Verdana" Then 
 ' UndoActionsAvailable = 3 
 .Undo (.UndoActionsAvailable) 
 With thePage 
 Set theShape = .Shapes.AddShape(msoShapeRectangle, _ 
 75, 75, 120, 30) 
 With theShape.TextFrame.TextRange 
 .Font.Name = "Verdana" 
 .Text = "This text is Verdana." 
 End With 
 End With 
 End If 
End With

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.