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


Метод Document.Redo (Publisher)

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

Синтаксис

expression. Повтор (число)

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

Параметры

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

Возвращаемое значение

Отсутствует

Примечания

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

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

Пример

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

Часть 1 создает прямоугольник, содержащий текстовый кадр на четвертой странице активной публикации. Задаются различные свойства шрифта, а текст добавляется в текстовый фрейм. В этом случае текст "Этот шрифт курьер" имеет значение 12 пунктов полужирным шрифтом Courier.

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

Dim thePage As page 
Dim theShape As Shape 
Dim theDoc As Publisher.Document 
 
Set theDoc = ActiveDocument 
Set thePage = theDoc.Pages(4) 
 
' Part 1 
With theDoc 
 With thePage 
 ' Setting the shape creates the first action 
 Set theShape = .Shapes.AddShape(msoShapeRectangle, _ 
 75, 75, 190, 30) 
 ' Setting the text range creates the second action 
 With theShape.TextFrame.TextRange 
 ' Setting the font size creates the third action 
 .Font.Size = 12 
 ' Setting the font to bold creates the fourth action 
 .Font.Bold = msoTrue 
 ' Setting the font name creates the fifth action 
 .Font.Name = "Courier" 
 ' Setting the text creates the sixth action 
 .Text = "This font is Courier." 
 End With 
 End With 
 
 ' Part 2 
 If Not thePage.Shapes(1).TextFrame.TextRange.Font.Name = "Verdana" Then 
 .Undo (4) 
 With thePage 
 With theShape.TextFrame.TextRange 
 ' Redo redoes the first two of the four actions that were just undone 
 theDoc.Redo (2) 
 .Font.Name = "Verdana" 
 .Text = "This font is Verdana." 
 End With 
 End With 
 End If 
End With

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

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