Para imprimir un documento le aplicamos el método printout
Por ejemplo
ActiveDocument.Printout
También podrían usarse las opciones de impresión usando
el objeto Options
Options.PrintHiddenText = TrueActiveDocument.PrintOut Range:=wdPrintFromTo, From:="1", To:="3"
El objeto Close sirve para cerrar un documento, por
ejemplo
Documents("Prueba.doc").Close
Se pueden agregar objetos, tales como notas al pie,
comentarios o tablas a un documento usando el método Add con una
colección de objetos accesada desde el objeto Document. La siguiente
instrucción, por ejemplo, agrega una tabla de 3x3 localizada por la variable myRange (myRange es una variable de
objeto que contiene un objeto Range).
ActiveDocument.Tables.Add Range:=myRange, NumRows:=3, NumColumns:=3
El siguiente ejemplo agrega una nota al pie en la
localización especificada por la variable myRange.
ActiveDocument.Footnotes.Add Range:=myRange, Text:="The Willow Tree"
Para una lista de la colección de objetos que soportan el
método Add, vea en la ayuda bajo el tópico "Add Method"
El objeto Range permite seleccionar un rango dentro
del documento, para entender el objeto Range hay que saber que existen 11
diferentes wsStoryTye correspondientes a diferentes partes de un documento que
son
wdCommentsStory, wdEndnotesStory, wdEvenPagesFooterStory, wdEvenPagesHeaderStory,
wdFirstPageFooterStory, wdFirstPageHeaderStory, wdFootnotesStory,
wdMainTextStory, wdPrimaryFooterStory, wdPrimaryHeaderStory,
and wdTextFrameStory.
Además de objetos que pueden modificarse que son:
|
Words(index) |
Range |
|
Characters(index)
|
Range |
|
Sentences(index)
|
Range |
|
Paragraphs(index)
|
Paragraph
|
|
Sections(index)
|
Section |
Algunos ejemplos de uso del objeto Range
Crear un rango y almacenarlos en MiRango (las 10 primeras
letras de un documento)
Set miRango = ActiveDocument.Range(Start:=0, End:=10)
Después podríamos
ponerlo en cursiva con
miRango.Italics = True
También podríamos
insertar una palabra antes de cierto rango con:
ActiveDocument.Range(Start:=0, End:=0).InsertBefore Text:="Hola "
Si usamos Range.Select veremos el rango “pintado”
tal como cuando seleccionamos con el mouse
Set miRango = ActiveDocument.Range(Start:=0,_ End:=ActiveDocument.Paragraphs(3).Range.End)
miRango.Select
Por ejemplo si
queremos colocar varios atributos a un párrafo usamos
Set myRange = ActiveDocument.Paragraphs(1).RangeWith myRange .Bold = True .ParagraphFormat.Alignment = wdAlignParagraphCenter .Font.Name = "Arial"End With
El objeto Selection permite también hacer muchas de
las operaciones que se hacen con Range, por ejemplo
Para mostrar el nombre de cada marcador en un documento
For Each aBook In Selection.Bookmarks MsgBox aBook.NameNext aBook
Los objetos Find y Replace permiten,
obviamente buscar y reemplazar texto, por ejemplo
Para buscar la palabra “Hola” dentro de un documento
With Selection.Find .Forward = True .Wrap = wdFindStop .Text = "Hola" .ExecuteEnd With
Para reemplazar las palabras “uno” por “dos” dentro de un
documento
With Selection.Find .ClearFormatting .Text = "uno" .Replacement.ClearFormatting .Replacement.Text = "dos" .Execute Replace:=wdReplaceAll, Forward:=True, Wrap:=wdFindContinueEnd With Agregar y Editar campos en un documento Para agregar campos a un documento se aplica el método Add a la colección Fields, por ejemplo para agregar el campo Fecha donde está la selección actual, usamos ActiveDocument.Fields.Add Range:=Selection.Range, Type:=wdFieldDate
Luego de agregado el campo, se obtiene (o se asigna) el
resultado de ese campo usando la propiedad Result o Code. El
ejemplo siguiente cambia el código del primer campo de la selección actual, lo
actualiza y muestra el resultado en el campo.
If Selection.Fields.Count >= 1 Then With Selection.Fields(1) .Code.Text = "CREATEDATE \*MERGEFORMAT" .Update MsgBox .Result.Text End WithEnd If