Cambiar el color de la fuente mediante código

Al código facilitado por Dante Amor, que línea habría que añadir para que el color de la fuente en las celdas a las que da el formato en color rojo y verde, sea blanco y negrita.

Sub formato2()
'Por.Dante Amor
    Set Rng = Application.InputBox("en que rango quieres aplicar el formato??", Type:=8)
    'recorremos cada celda del rango seleccionado
    For Each celda In Rng
        valor = celda.Value
        'asignamos colores según el valor de la celda
        fila = celda.Row
        residuo = fila Mod 2
        If residuo = 1 Then
            celda.Interior.Color = 16774629
        Else
            celda.Interior.Color = 16777215
        End If
        '
        If valor < 0 Then
            celda.Interior.Color = 255
        ElseIf valor > 0 Then
            celda.Interior.Color = 32768
        End If
    Next celda
End Sub

2 respuestas

Respuesta
1

A continuación de donde dice:

celda.Interior.Color = ----

debes agregar la de fuente, según el color en cada caso:

celda.Font.Color = .......

El color lo podés obtener activando la grabadora de macros, cambiando el color de fuente a los colores deseados y luego detené la grabadora y en un módulo tendrás el nro y la instrucción completa.

Los colores cambian según tu versión Excel por eso es mejor que lo hagas en tu libro con la grabadora.

Respuesta
1

Te anexo la macro con las líneas para la letra blanco y negrita

Sub formato2()
'Por.Dante Amor
    Set Rng = Application.InputBox("en que rango quieres aplicar el formato??", Type:=8)
    'recorremos cada celda del rango seleccionado
    For Each celda In Rng
        valor = celda.Value
        'asignamos colores según el valor de la celda
        fila = celda.Row
        residuo = fila Mod 2
        If residuo = 1 Then
            celda.Interior.Color = 16774629
        Else
            celda.Interior.Color = 16777215
        End If
        '
        If valor < 0 Then
            celda.Interior.Color = 255 'rojo
            celda.Font.ColorIndex = 2 'blanco
        ElseIf valor > 0 Then
            celda.Interior.Color = 32768 'verde
            celda.Font.Bold = True 'negrita
        End If
    Next celda
End Sub

Saludos.Dante Amor

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas