Clase Bookmark (Word VBA)

La clase Bookmark representa un solo marcador en un documento, selección o rango.

Los principales procedimientos de la clase Bookmark son Copy, Delete, Select y Bookmarks.Add

Set

Para usar una variable de clase Bookmark, primero debe ser instanciado, por ejemplo

Dim bkm as Bookmark
Set bkm = ActiveDocument.Bookmarks(Index:=1)

Los siguientes procedimientos se pueden usar para establecer variables de clase Bookmark : Copy, Bookmarks.Add, Bookmarks.Item, Document.Bookmarks, Range.Bookmarks y Selection.Bookmarks

For Each

A continuación, se muestra un ejemplo de cómo procesar los elementos Bookmark en una colección.

Dim bkm As Bookmark
For Each bkm In ActiveDocument.Bookmarks
	
Next bkm

Métodos

Los principales métodos de la clase Bookmark son

Copy - Copia un marcador en el nuevo marcador especificado en el argumento Name y devuelve un objeto Bookmark .

Dim strName As String: strName =  
Dim bkmCopy As Bookmark
Set bkmCopy = ActiveDocument.Bookmarks(1).Copy(Name:=strName)

Delete - Elimina el marcador especificado.

ActiveDocument.Bookmarks(1).Delete

Select - Selecciona el marcador especificado.

ActiveDocument.Bookmarks(1).Select

Bookmarks.Add - Devuelve un objeto Bookmark que representa un marcador agregado a un intervalo.

Dim strName As String: strName =  
Dim bkm As Bookmark
Set bkm = ActiveDocument.Bookmarks.Add(Name:=strName)

Propiedades

Column True si el marcador especificado es una columna de tabla.

Dim booColumn As Boolean
booColumn = ActiveDocument.Bookmarks(1).Column

Empty True si el marcador especificado está vacío.

Dim booEmpty As Boolean
booEmpty = ActiveDocument.Bookmarks(1).Empty

End Devuelve o establece la posición del carácter final de una selección, intervalo o marcador.

ActiveDocument.Bookmarks(1).End =

Name Devuelve el nombre del objeto especificado.

Dim strName As String
strName = ActiveDocument.Bookmarks(1).Name

Parent Devuelve un objeto Object que representa el objeto primario del objeto Bookmark especificado.

Dim objParent As Object
Set objParent = ActiveDocument.Bookmarks(1).Parent

Range Devuelve un objeto Range que representa la parte de un documento que está contenida en el objeto especificado.

Dim rngRange As Range
Set rngRange = ActiveDocument.Bookmarks(1).Range

Start Devuelve o establece la posición del carácter inicial de un marcador.

ActiveDocument.Bookmarks(1).Start =

StoryType Devuelve el tipo de artículo del intervalo, la selección o el marcador especificado.

Dim wstStoryType As WdStoryType
wstStoryType = ActiveDocument.Bookmarks(1).StoryType

Bookmarks.Count Devuelve el número de elementos de la colección Bookmarks.

Dim lngCount As Long
lngCount = ActiveDocument.Bookmarks.Count

Bookmarks.DefaultSorting Devuelve o establece la opción de ordenar de los nombres de los marcadores que se muestran en el cuadro de diálogo Marcador (menú Insertar).

ActiveDocument.Bookmarks.DefaultSorting = wdSortByLocation

Bookmarks.Parent Devuelve un objeto Object que representa el objeto primario de la colección Bookmarks especificada.

Dim objParent As Object
Set objParent = ActiveDocument.Bookmarks.Parent

Bookmarks.ShowHidden True si los marcadores ocultos se incluyen en la colección Bookmarks.

ActiveDocument.Bookmarks.ShowHidden = True