Saltar al contenido principal
 

¿Cómo filtrar la tabla dinámica en función de un valor de celda específico en Excel?

Autor: Silvia Última modificación: 2024-12-02

El filtrado de datos en una tabla dinámica se realiza normalmente seleccionando elementos de una lista desplegable. Sin embargo, puede haber situaciones en las que desee que la tabla dinámica filtre dinámicamente en función del valor de una celda específica. Este tutorial proporciona una solución VBA sencilla para automatizar este proceso, lo que facilita la gestión y el análisis de los datos de forma eficiente.

Una captura de pantalla que muestra una tabla dinámica con un filtro desplegable en Excel

Filtrar la tabla dinámica en función de un valor de celda específico con código VBA


Filtrar la tabla dinámica en función de un valor de celda específico con código VBA

El siguiente código VBA puede ayudarle a filtrar una tabla dinámica de forma dinámica en función de un valor de celda específico en Excel. Siga estos pasos.

1. Ingrese un valor en el que filtrará la tabla dinámica en una celda de antemano (aquí selecciono la celda H6).

2. Abra la hoja de trabajo que contiene la tabla dinámica que filtrará por valor de celda. Luego, haga clic con el botón derecho en la pestaña de la hoja y seleccione Ver código en el menú contextual. Ver captura de pantalla:

Una captura de pantalla que muestra la opción Ver código para una hoja de cálculo en Excel

3. En la apertura Microsoft Visual Basic para aplicaciones ventana, copie debajo del código VBA en la ventana Código.

Código de VBA: tabla dinámica de filtro según el valor de la celda

Private Sub Worksheet_Change(ByVal Target As Range)
'Update by Extendoffice 20180702
    Dim xPTable As PivotTable
    Dim xPFile As PivotField
    Dim xStr As String
    On Error Resume Next
    If Intersect(Target, Range("H6:H7")) Is Nothing Then Exit Sub
    Application.ScreenUpdating = False
    Set xPTable = Worksheets("Sheet1").PivotTables("PivotTable2")
    Set xPFile = xPTable.PivotFields("Category")
    xStr = Target.Text
    xPFile.ClearAllFilters
    xPFile.CurrentPage = xStr
    Application.ScreenUpdating = True
End Sub

Notas: En el código,

1) "Sheet1”Es el nombre de la hoja de trabajo.
2) "PivotTable2”Es el nombre de la tabla dinámica.
3) El campo de filtrado de la tabla dinámica se llama "Categoría".
4) El valor que desea filtrar la tabla dinámica se coloca en la celda H6.
Puede cambiar los valores de las variables anteriores según lo necesite.

4. presione el otro + Q llaves para cerrar el Microsoft Visual Basic para aplicaciones ventana.

La tabla dinámica ahora filtrará dinámicamente según el valor de la celda H6, como se muestra en la siguiente captura de pantalla:

Una captura de pantalla que muestra una tabla dinámica filtrada según un valor de celda específico en Excel

Puede actualizar el valor de la celda para aplicar un filtro diferente según sea necesario.

Una captura de pantalla que muestra el resultado de cambiar el valor de la celda de filtro para la tabla dinámica en Excel

Nota: Los valores que escriba en la celda H6 deben coincidir exactamente con los valores de la lista desplegable Categoría de la tabla dinámica.


Artículos relacionados:

Las mejores herramientas de productividad de oficina

🤖 Asistente de IA de Kutools: Revolucionar el análisis de datos basado en: Ejecución inteligente   |  Generar codigo  |  Crear fórmulas personalizadas  |  Analizar datos y generar gráficos  |  Invocar funciones de Kutools...
Características populares: Buscar, resaltar o identificar duplicados   |  Eliminar filas en blanco   |  Combine columnas o celdas sin perder datos   |   Ronda sin fórmula ...
Super búsqueda: Búsqueda virtual de criterios múltiples    Búsqueda V de valores múltiples  |   VLookup en varias hojas   |   Búsqueda difusa ....
Lista desplegable avanzada: Crear rápidamente una lista desplegable   |  Lista desplegable dependiente   |  Lista desplegable de selección múltiple ....
Administrador de columnas: Agregar un número específico de columnas  |  Mover columnas  |  Toggle Estado de visibilidad de columnas ocultas  |  Comparar rangos y columnas ...
Características destacadas: Enfoque de cuadrícula   |  Vista de diseño   |   Gran barra de fórmulas    Administrador de hojas y libros de trabajo   |  Recursos (Texto automático)   |  Selector de fechas   |  Combinar hojas de trabajo   |  Cifrar/descifrar celdas    Enviar correos electrónicos por lista   |  Súper filtro   |   Filtro especial (filtro negrita/cursiva/tachado...) ...
Los 15 mejores conjuntos de herramientas12 Texto Herramientas (Añadir texto, Quitar caracteres, ...)   |   50+ Tabla Tipos (Diagrama de Gantt, ...)   |   40+ Práctico Fórmulas (Calcular la edad según el cumpleaños, ...)   |   19 Inserción Herramientas (Insertar código QR, Insertar imagen desde la ruta, ...)   |   12 Conversión Herramientas (Números a palabras, Conversión de Moneda, ...)   |   7 Fusionar y dividir Herramientas (Filas combinadas avanzadas, Células partidas, ...)   |   ... y más

Mejore sus habilidades de Excel con Kutools for Excel y experimente la eficiencia como nunca antes. Kutools for Excel ofrece más de 300 funciones avanzadas para aumentar la productividad y ahorrar tiempo.  Haga clic aquí para obtener la función que más necesita...


Office Tab lleva la interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil

  • Habilite la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abra y cree varios documentos en nuevas pestañas de la misma ventana, en lugar de en nuevas ventanas.
  • ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!