¿Cómo filtrar una Tabla Dinámica basada en un valor de celda específico en Excel?
El filtrado de datos en una Tabla Dinámica normalmente se realiza seleccionando elementos de una lista desplegable. Sin embargo, puede haber situaciones en las que quieras que la Tabla Dinámica filtre dinámicamente según el valor de una celda específica. Este tutorial proporciona una solución VBA sencilla para automatizar este proceso, facilitando la gestión y el análisis eficiente de tus datos.
Filtrar Tabla Dinámica basada en un valor de celda específico con código VBA
Filtrar Tabla Dinámica basada en un valor de celda específico con código VBA
El siguiente código VBA puede ayudarte a filtrar una Tabla Dinámica dinámicamente basada en un valor de celda específico en Excel. Por favor, sigue los siguientes pasos.
1. Ingresa un valor en una celda con antelación (aquí selecciono la celda H6) sobre el cual filtrarás la Tabla Dinámica.
2. Abre la hoja de trabajo que contiene la Tabla Dinámica que deseas filtrar por el valor de una celda. Luego haz clic derecho en la pestaña de la hoja y selecciona Ver Código desde el menú contextual. Ver captura de pantalla:
3. En la ventana abierta de Microsoft Visual Basic para Aplicaciones, copia el siguiente código VBA en la ventana de Código.
Código VBA: Filtrar Tabla Dinámica basada en el valor de una 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,
4. Presiona las teclas Alt + Q para cerrar la ventana de Microsoft Visual Basic para Aplicaciones.
La Tabla Dinámica ahora filtrará dinámicamente basándose en el valor de la celda H6, como se muestra en la siguiente captura de pantalla:
Puedes actualizar el valor de la celda para aplicar un filtro diferente según sea necesario.
Nota: Los valores que escribas en la celda H6 deben coincidir exactamente con los valores en la lista desplegable Categoría de la Tabla Dinámica.
Artículos relacionados:
- ¿Cómo combinar varias hojas en una tabla dinámica en Excel?
- ¿Cómo crear una Tabla Dinámica a partir de un archivo de texto en Excel?
- ¿Cómo vincular el filtro de una Tabla Dinámica a una celda específica en Excel?
Las mejores herramientas de productividad para Office
Impulsa al máximo tu dominio de Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para potenciar la productividad y ahorrar tiempo.Haz clic aquí para obtener la función que más necesitas...
Office Tab aporta una interfaz de pestañas a Office y hace tu trabajo mucho más sencillo
- Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abre y crea varios documentos en nuevas pestañas de la misma ventana, en vez de en nuevas ventanas.
- ¡Aumenta tu productividad hasta un50% y reduce cientos de clics de ratón cada día!