¿Cómo mostrar u ocultar elementos específicos en una tabla dinámica con VBA?

Para mostrar u ocultar elementos específicos en una tabla dinámica utilizando VBA en Excel, puedes usar el objeto `PivotItems` para acceder a los elementos individuales de un campo de la tabla dinámica. Aquí tienes un ejemplo de cómo hacerlo:

Supongamos que tienes una tabla dinámica que contiene un campo llamado «Categoría» y deseas ocultar todos los elementos excepto uno llamado «Electrónica». El siguiente código VBA te permitiría lograr esto:

Sub MostrarOcultarElementos()
    Dim pt As PivotTable
    Dim pf As PivotField
    Dim pi As PivotItem
    Dim ws As Worksheet
    Dim elementoVisible As String

    ' Define el nombre del elemento que deseas dejar visible
    elementoVisible = "Electrónica"

    ' Cambia "Hoja1" por el nombre de tu hoja que contiene la tabla dinámica
    ' Cambia "Tabla dinámica1" por el nombre de tu tabla dinámica
    Set ws = ThisWorkbook.Sheets("Hoja1")
    Set pt = ws.PivotTables("Tabla dinámica1")

    ' Cambia "Categoría" por el nombre del campo de tu tabla dinámica
    Set pf = pt.PivotFields("Categoría")

    ' Itera sobre cada elemento del campo y establece su visibilidad
    For Each pi In pf.PivotItems
        If pi.Name = elementoVisible Then
            pi.Visible = True
        Else
            pi.Visible = False
        End If
    Next pi

End Sub

Este código realiza lo siguiente:

  • Obtiene la referencia a la tabla dinámica y al campo específico que deseas modificar.
  • Define el elemento específico que deseas dejar visible.
  • Recorre todos los elementos del campo y establece su visibilidad a `True` o `False` según corresponda.

Para usar este código:

  • Abre el Editor de VBA presionando `Alt + F11` en Excel.
  • Inserta un nuevo módulo desde el menú `Insertar` > `Módulo`.
  • Copia y pega el código en el módulo.
  • Ajusta los nombres de la hoja y de la tabla dinámica según sea necesario.
  • Ejecuta la macro para aplicar los cambios.

Este enfoque te permite controlar de manera precisa qué elementos se muestran u ocultan en tu tabla dinámica mediante VBA.

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