Compartilhar via


Método Document.Redo (Publisher)

Refaz a última ação ou um determinado número de ações. Corresponde à lista de itens que aparece quando seleciona a seta ao lado do botão Refazer na barra de ferramentas Standard. Chamar este método inverte o método Anular .

Sintaxe

expressão. Refazer (Contagem)

expressão Uma variável que representa um objeto documento .

Parâmetros

Nome Obrigatório/Opcional Tipo de dados Descrição
Count Opcional Long Especifica o número de ações a serem refeitas. O padrão é 1, o que significa que, se omitido, somente a última ação será refeita.

Valor de retorno

Nada

Comentários

Se for chamado quando não existirem ações na pilha de fase de rollforia, ou quando a Contagem for maior do que o número de ações que residem atualmente na pilha, o método Refazer refazerá o maior número de ações possível e ignorará o resto.

O número máximo de ações que podem ser refeitas em uma chamada de Redo é 20.

Exemplo

O exemplo seguinte utiliza o método Refazer para refazer um subconjunto das ações que foram anuladas com o método Anular .

A parte 1 cria um retângulo que contém um quadro de texto na quarta página da publicação ativa. Várias propriedades de fonte são definidas e texto é adicionado ao quadro de texto. Nesse caso, o texto "This font is Courier" é definido como fonte Courier 12 pontos em negrito.

Parte 2 testa se o texto no quadro de texto tem fonte Verdana. Caso contrário, o método Anular é utilizado para anular as últimas quatro ações na pilha de anulação. O método Refazer é então utilizado para refazer as duas primeiras das últimas quatro ações que foram simplesmente anuladas. Nesse caso, a ação de terceira (definindo o tamanho da fonte) e a quarta ação (definir a fonte como negrito) serão refeitas. O nome da fonte for alterado para Verdana e o texto é modificado.

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

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.