¿Cómo vincular el filtro de una Tabla Dinámica a una celda específica en Excel?
Si desea vincular un filtro de Tabla Dinámica a una celda específica y hacer que la Tabla Dinámica se filtre según el valor de la celda, el método descrito en este artículo puede ayudarle.
Vincule el filtro de la Tabla Dinámica a una celda específica con código VBA
Vincule el filtro de la Tabla Dinámica a una celda específica con código VBA
La Tabla Dinámica cuya función de filtro vinculará a un valor de celda debe incluir un campo de filtro (el nombre del campo de filtro juega un papel importante en el siguiente código VBA).
Tomemos como ejemplo la siguiente Tabla Dinámica: El campo de filtro en la Tabla Dinámica se llama Categoría e incluye dos valores “Gastos” y “Ventas”. Después de vincular el filtro de la Tabla Dinámica a una celda, los valores de celda que aplicará para filtrar la Tabla Dinámica deben ser “Gastos” y “Ventas”.
1. Por favor, seleccione la celda (aquí selecciono la celda H6) que vinculará a la función de filtro de la Tabla Dinámica e ingrese uno de los valores de filtro en la celda de antemano.
2. Abra la hoja de cálculo que contiene la Tabla Dinámica que vinculará a la celda. Haga clic derecho en la pestaña de la hoja y seleccione Ver Código desde el menú contextual. Consulte la captura de pantalla:
3. En la ventana de Microsoft Visual Basic para Aplicaciones, copie el siguiente código VBA en la ventana de Código.
Código VBA: Vincular el filtro de la Tabla Dinámica a una celda específica
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")) 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:
4. Presione las teclas Alt + Q para cerrar la ventana de Microsoft Visual Basic para Aplicaciones.
Ahora la función de filtro de la Tabla Dinámica está vinculada a la celda H6.
Actualice la celda H6, luego los datos correspondientes en la Tabla Dinámica se filtran en función del valor existente. Consulte la captura de pantalla:
Al cambiar el valor de la celda, los datos filtrados en la Tabla Dinámica cambiarán automáticamente. Consulte la captura de pantalla:

Descubre la Magia de Excel con Kutools AI
- Ejecución Inteligente: Realiza operaciones en celdas, analiza datos y crea gráficos, todo impulsado por comandos simples.
- Fórmulas Personalizadas: Genera fórmulas adaptadas para optimizar tus flujos de trabajo.
- Codificación VBA: Escribe e implementa código VBA sin esfuerzo.
- Interpretación de Fórmulas: Comprende fórmulas complejas con facilidad.
- Traducción de Texto: Supera las barreras del idioma dentro de tus hojas de cálculo.
Artículos relacionados:
- ¿Cómo combinar varias hojas en una tabla dinámica en Excel?
- ¿Cómo crear una Tabla Dinámica desde un archivo de texto en Excel?
- ¿Cómo filtrar una Tabla Dinámica basándose en un valor específico de una celda en Excel?
Las mejores herramientas de productividad para Office
Potencia tus habilidades en Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haz clic aquí para obtener la función que más necesitas...
Office Tab lleva la interfaz de pestañas a Office y facilita mucho tu trabajo
- 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 lugar de nuevas ventanas.
- ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!