Excel - Macro para filtrar tabla dinámica por varios valores a la vez

 
Vista:
sin imagen de perfil

Macro para filtrar tabla dinámica por varios valores a la vez

Publicado por antonio (2 intervenciones) el 04/06/2020 20:53:03
Buenas tardes.
Necesito filtrar una tabla dinámica por 2 valores a la vez pero no logro hacerlo mediante una macro. Os adjunto el código vba que tengo escrito pero que no acaba de funcionar. El campo por el que quiero filtrar se llama día.

¿Podéis darle un vistazo?
Gracias por vuestro tiempo.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Sub Macro_Filtra()
 
'quiero filtrar por el campo día y los valores 5 y 3
    Dim día(1) As Integer
    día(0) = 5
    día(1) = 3
 
    Dim ptTable As PivotTable
    Dim slDummy As SlicerItem
    Dim slSlicer As SlicerCache
 
    'Definir Tabla dinamica y Segmentación de datos
    Set ptTable = Hoja1.PivotTables(1)
    Set slSlicer = Hoja1.Parent.SlicerCaches(1)
 
    'Inicializar Slicer con 1 solo dato filtrado
        With ptTable.PivotFields("día")
        .ClearAllFilters
        .EnableMultiplePageItems = True
        .CurrentPage = día(0)
    End With
 
    'ESTA ES LA PARTE QUE NO FUNCIONA
    'Recorrer Slicer para filtrar el otro valor
    For Each slDummy In slSlicer.SlicerItems
        If Not IsError(Application.Match(slDummy.Name, día, 0)) Then slDummy.Selected = True
    Next slDummy
 
 
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder