Clase Border - borde (Word VBA)

La clase Border representa un borde de un objeto.

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

Dim brd as Border
Set brd = Selection.Borders(Index:=1)

Las variables de tipo Border se pueden establecer utilizando el procedimiento Borders.Item

For Each

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

Dim brd As Border
For Each brd In Selection.Borders
	    If brd.Inside = True Then brd.LineStyle = wdLineStyleSingle 
Next brd

ArtStyle

Devuelve o establece el diseño de borde de página gráfico de un documento. Aquí puede ver valores posibles para WdPageBorderArt.

Selection.Borders(1).ArtStyle = wdArtApples

ArtWidth

Devuelve o establece el ancho (en puntos) del borde de página gráfico especificado.

Dim borderLoop As Border 
 
For Each borderLoop In Selection.Sections(1).Borders 
 With borderLoop 
 .ArtStyle = wdArtBasicBlackDots 
 .ArtWidth = 6 
 End With 
Next borderLoop

Color

Devuelve o establece el color de 24 bits para el objeto Border especificado. Aquí puede ver valores posibles para WdColor.

Esta propiedad puede ser cualquier constante WdColor válida o un valor devuelto por la función RGB de Visual Basic.

If ActiveDocument.Tables.Count >= 1 Then 
 For Each aBorder In ActiveDocument.Tables(1).Borders 
 aBorder.Color = wdColorIndigo 
 aBorder.LineStyle = wdLineStyleDashDot 
 aBorder.LineWidth = wdLineWidth075pt 
 Next aBorder 
End If

ColorIndex

Devuelve o establece el color del objeto border o font especificado. Aquí puede ver valores posibles para WdColorIndex.

La constante wdByAuthor no es válida para los objetos border y font.

Dim borderLoop As Border 
 
If ActiveDocument.Tables.Count >= 1 Then 
 For Each borderLoop In ActiveDocument.Tables(1).Borders 
 With borderLoop 
 .ColorIndex = wdRed 
 .LineStyle = wdLineStyleDashDot 
 .LineWidth = wdLineWidth075pt 
 End With 
 Next borderLoop 
End If

Inside

True si un interior borde puede aplicarse al objeto especificado.

Dim borderLoop As Border 
 
For Each borderLoop In Selection.Borders 
 If borderLoop.Inside = True Then _ 
 borderLoop.LineStyle = wdLineStyleSingle 
Next borderLoop

LineStyle

Devuelve o establece el estilo de línea de borde para el objeto especificado. Aquí puede ver valores posibles para WdLineStyle.

Al establecer la propiedad LineStyle para un intervalo que hace referencia a caracteres individuales o palabras se aplica un borde de carácter. Establece la propiedad LineStyle para un párrafo o un intervalo de párrafos, aplica un borde de párrafo. Establece la propiedad LineStyle para una sección, aplica un borde de página alrededor de las páginas en la sección.

With Selection.Borders(wdBorderTop) 
 .LineStyle = wdLineStyleSingle 
 .LineWidth = wdLineWidth075pt 
End With

LineWidth

Devuelve o define el ancho de línea del borde de un objeto. Aquí puede ver valores posibles para WdLineWidth.

Devuelve una constante WdLineWidth o wdUndefined si el objeto no tiene bordes o tiene bordes con más de un ancho de línea.

If ActiveDocument.Tables.Count >= 1 Then 
 With ActiveDocument.Tables(1).Rows(1).Borders(wdBorderBottom) 
 .LineStyle = wdLineStyleSingle 
 .LineWidth = wdLineWidth050pt 
 End With 
End If

Visible

True si el objeto especificado está visible.

Para los objetos, algunos métodos y propiedades no esté disponibles si la propiedad Visible es False.

Set myTable = ActiveDocument.Tables.Add(Range:=Selection.Range, _ 
 NumRows:=12, NumColumns:=5) 
For Each aBorder In myTable.Borders 
 aBorder.Visible = False 
Next aBorder