Compartir a través de


Método Document.EndCustomUndoAction (Publisher)

Especifica el punto final de un grupo de acciones que se agrupan para crear una sola acción de deshacer. El método BeginCustomUndoAction se usa para especificar el punto inicial y la etiqueta (descripción textual) de las acciones utilizadas para crear la acción de deshacer única. El grupo ajustado de acciones se puede deshacer ejecutando Deshacer una sola vez.

Sintaxis

expresión. EndCustomUndoAction

expresión Variable que representa un objeto Document .

Observaciones

Debe llamarse al método BeginCustomUndoAction antes de llama al método EndCustomUndoAction. Se devuelve un error en tiempo de ejecución si se llama a EndCustomUndoAction antes de llamar a BeginCustomUndoAction.

Ejemplo

En el siguiente ejemplo contiene dos acciones de deshacer personalizado. La primera se crea en la cuarta página de la publicación activa. El método BeginCustomUndoAction se usa para especificar el punto en el que debe comenzar la acción de deshacer personalizada. Se realizan seis acciones individuales y, a continuación, se ajustan en una acción con la llamada a EndCustomUndoAction.

A continuación, se comprueba el texto del marco de texto que se creó en la primera acción de deshacer personalizada para determinar si la fuente es Verdana. En caso negativo, se llama al método Undo con UndoActionsAvailable. En este caso, solo hay una acción de deshacer disponible. Por lo tanto, al llamar a Undo, solo se deshará una acción, que incluye seis acciones agrupadas en una.

A continuación se crea una segunda acción de deshacer, que también podrá deshacerse posteriormente con una sola operación de deshacer.

En este ejemplo se supone que la publicación activa contiene al menos cuatro páginas.

Dim thePage As page 
Dim theShape As Shape 
Dim theDoc As Publisher.Document 
 
Set theDoc = ActiveDocument 
Set thePage = theDoc.Pages(4) 
 
With theDoc 
 ' The following six of actions are wrapped to create one 
 ' custom undo action named "Add Rectangle and Courier Text". 
 .BeginCustomUndoAction ("Add Rectangle and Courier Text") 
 With thePage 
 Set theShape = .Shapes.AddShape(msoShapeRectangle, _ 
 75, 75, 190, 30) 
 With theShape.TextFrame.TextRange 
 .Font.Size = 14 
 .Font.Bold = msoTrue 
 .Font.Name = "Courier" 
 .Text = "This font is Courier." 
 End With 
 End With 
 .EndCustomUndoAction 
 
 If Not thePage.Shapes(1).TextFrame.TextRange.Font.Name = "Verdana" Then 
 ' This call to Undo will undo all actions that are available. 
 ' In this case, there is only one action that can be undone. 
 .Undo (.UndoActionsAvailable) 
 ' A new custom undo action is created with a name of 
 ' "Add Balloon and Verdana Text". 
 .BeginCustomUndoAction ("Add Balloon and Verdana Text") 
 With thePage 
 Set theShape = .Shapes.AddShape(msoShapeBalloon, _ 
 75, 75, 190, 30) 
 With theShape.TextFrame.TextRange 
 .Font.Size = 11 
 .Font.Name = "Verdana" 
 .Text = "This font is Verdana." 
 End With 
 End With 
 .EndCustomUndoAction 
 End If 
End With

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.