Clase ColorFormat - el color (Word VBA)

La clase ColorFormat representa el color de primer plano o de un objeto de un color o un color de fondo de un objeto con un relleno degradado o entramado.

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

Dim cft as ColorFormat
Set cft = Selection.Font.TextColor

Los siguientes procedimientos se pueden usar para establecer variables de clase ColorFormat : FillFormat.BackColor, FillFormat.ForeColor, Font.TextColor, GlowFormat.Color, LineFormat.BackColor, LineFormat.ForeColor, ShadowFormat.ForeColor, ThreeDFormat.ContourColor y ThreeDFormat.ExtrusionColor.

Brightness

Devuelve un valor Single que representa el brillo de un color de forma especificado.

Puede escribir un número comprendido entre -1 (más oscuro) y 1 (más claro) para la propiedad Brightness, siendo 0 (cero) neutro.

Sub NewTintedShape() 
 Dim shpHeart As Shape 
 
 Set shpHeart = ActiveDocument.Shapes _ 
 .AddShape(Type:=msoShapeHeart, Left:=150, _ 
 Top:=150, Width:=250, Height:=250) 
 With shpHeart.Fill.ForeColor 
 .RGB = RGB(Red:=255, Green:=28, Blue:=0) 
 .Brightness = 0.4 
 End With 
End Sub

ObjectThemeColor

Devuelve o establece una constante WdThemeColorIndex que indica el color del tema de un formato de color. Aquí puede ver valores posibles para WdThemeColorIndex.

Selection.Font.TextColor.ObjectThemeColor = wdNotThemeColor

RGB

Devuelve o establece el valor rojo, verde y azul (RGB) del color especificado.

ActiveDocument.Shapes(2).Fill.ForeColor.RGB = RGB(128, 128, 128)

TintAndShade

Devuelve un valor Single que representa la iluminación o oscurecimiento del color de una forma especificada.

Puede escribir un número comprendido entre -1 (más oscuro) y 1 (más claro) para la propiedad TintAndShade; el valor 0 (cero) es neutro.

Sub NewTintedShape() 
 Dim shpHeart As Shape 
 Set shpHeart = ActiveDocument.Shapes _ 
 .AddShape(Type:=msoShapeHeart, Left:=150, _ 
 Top:=150, Width:=250, Height:=250) 
 With shpHeart.Fill.ForeColor 
 .RGB = RGB(Red:=255, Green:=28, Blue:=0) 
 .TintAndShade = 0.3 
 End With 
End Sub

Type

Devuelve o establece el tipo de color.

Dim mctType As Office.MsoColorType
mctType = Selection.Font.TextColor.Type