¿Cómo aplicar formato condicional a una tabla dinámica con VBA?

Para aplicar formato condicional a una tabla dinámica utilizando VBA en Excel, puedes seguir estos pasos. Este procedimiento implica escribir un script en VBA que aplique un formato condicional específico a tu tabla dinámica. A continuación te muestro un ejemplo básico:

Sub AplicarFormatoCondicionalTablaDinamica()

    Dim ws As Worksheet
    Dim pt As PivotTable
    Dim rng As Range
    Dim formato As FormatCondition
    
    ' Ajusta el nombre de la hoja según sea necesario
    Set ws = ThisWorkbook.Sheets("Hoja1")
    
    ' Asigna la tabla dinámica (ajusta el nombre según sea necesario)
    Set pt = ws.PivotTables("TablaPivote1")
    
    ' Define el rango al que deseas aplicar el formato condicional
    ' En este caso, se aplicará al rango de valores de la tabla dinámica
    Set rng = pt.DataBodyRange
    
    ' Limpia los formatos condicionales existentes
    rng.FormatConditions.Delete
    
    ' Agrega un nuevo formato condicional -- cambia los valores y condiciones según sea necesario
    Set formato = rng.FormatConditions.Add(Type:=xlCellValue, Operator:=xlGreater, Formula1:="1000")
    
    ' Define el formato, por ejemplo, texto en rojo y negrita si el valor es mayor a 1000
    With formato
        .Font.Color = RGB(255, 0, 0)
        .Font.Bold = True
    End With

End Sub
  • Abre el Editor de VBA:
    • Abre Excel y presiona `Alt` + `F11` para abrir el Editor de VBA.
  • Inserta un Módulo:
    • Haz clic derecho sobre tu proyecto VBA en el Explorador de Proyectos.
    • Selecciona `Insertar` -> `Módulo`.
  • Escribe el código VBA:
    • Copia y pega el siguiente código en el módulo. Este ejemplo asume que la tabla dinámica está en la hoja denominada «Hoja1» y que deseas aplicar un formato condicional al rango de valores de la tabla dinámica.
  • Ejecuta el script:
    • Puedes ejecutar el script presionando `F5` estando dentro del Editor de VBA, o puedes asignar este macro a un botón en tu hoja de Excel.

Este script aplicará un formato condicional al rango de los valores de una tabla dinámica específica, resaltando en rojo y en negrita los valores que son mayores a 1000. Asegúrate de ajustar el nombre de la hoja, el nombre de la tabla dinámica, y los parámetros del formato condicional para que se ajusten a tus necesidades específicas.

Recuerda que siempre debes guardar una copia de seguridad de tu archivo antes de ejecutar macros, ya que los cambios realizados por VBA pueden ser difíciles de revertir manualmente si algo no sale como esperado.

Conoce nuestra tienda

Ver más productos

Mejora tu nivel y logra tus objetivo

Excel

Excel cursos

Access

cursos de Access

Power BI

cursos power BI

Ayúdanos a hacer crecer el proyecto

Deja un comentario