Filtrar con dos criterios tabla dinámica en otra hoja mediante macro VBA

Un archivo de excel, este contiene una hoja con una tabla dinámica y otra con una interfaz que lo que busca es que el usuario filtre mediante ÁREAS Y PRODUCTOS.

Tengo la siguiente macro que lo que hace es filtrar mediante ÁREAS dependiendo del valor de una celda definida. Ahora mi necesidad es, aplicar el filtro de PRODUCTOS sobre el de ÁREAS. Siendo así, que el usuario pueda seleccionar un ÁREA y un PRODUCTO para que pueda ver los datos que necesita.

Este código esta insertado en otra hoja distinta de la que contiene la tabla dinámica

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("B5")) Is Nothing Then

Dim hoja As Worksheet
Dim td As PivotTable
For Each hoja In ThisWorkbook.Worksheets
'Recorrer las tablas dinámicas de la hoja
For Each td In hoja.PivotTables
'En base al campo Area(JEFATURAS) de la tabla dinámica:
With td.PivotFields("Area")
'Limpiar todos los filtros
.ClearAllFilters
'Filtrar por el valor de la celda B5
On Error Resume Next
.CurrentPage = Range("B5").Value
End With
Next td
Next
End If
End Sub

Añade tu respuesta

Haz clic para o