Saltar al contenido

DEPURAR CÓDIGO DE FORMATO CONDICIONAL


Recommended Posts

publicado

Hola a todxs,

 

Simplemente os quería consultar una cosilla, ¿existe la posibilidad de depurar el siguiente código aun más?

(He utilizado la grabadora de macros, y casi siempre suele ser bastante enreversada en ese sentido. Por eso lo pregunto...)

 

... 
With Range(Cells(5, 20), Cells(5, 20).End(xlDown))
    .FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, Formula1:="=0"
    .FormatConditions(Range(Cells(5, 20), Cells(5, 20).End(xlDown)).FormatConditions.Count).SetFirstPriority
        With .FormatConditions(1).Font
        ' Fuente de las celdas:
            .Bold = True
            .Color = -16776961
        End With
    .FormatConditions(1).StopIfTrue = False

    .FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, Formula1:="=1"
    .FormatConditions(Range(Cells(5, 20), Cells(5, 20).End(xlDown)).FormatConditions.Count).SetFirstPriority
        With .FormatConditions(1).Font
        ' Fuente de las celdas:
            .Bold = True
            .Color = -11489280
        End With
    .FormatConditions(1).StopIfTrue = False
End With
...

Gracias de antemano por vuestro tiempo.

publicado

¡Hola, @paikerr!

Yo lo haría así:

1. Definiría un procedimiento base para los formatos condicionales:

Sub FormCond(rango As Range, formula$, kolor&)
    Dim FC As FormatCondition
    Set FC = rango.FormatConditions.Add(xlCellValue, xlEqual, formula)
    With FC
        With .Font
            .Bold = True: .Color = kolor
        End With
        .StopIfTrue = False
        .SetFirstPriority
    End With
End Sub

2. Desde mi procedimiento principal, llamaría este procedimiento base para ejecutar el Formato Condicional cada que lo necesite:

Sub Procedimiento()
    ' otro código ...

    FormCond Range(Cells(5, 20), Cells(5, 20).End(xlDown)), "=0", -16776961
    FormCond Range(Cells(5, 20), Cells(5, 20).End(xlDown)), "=1", -11489280

    ' otro código ...
End Sub

¡Bendiciones!

  • Silvia bloqueó este tema

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.