potřeboval bych pomoct. Mám KT a potřebuji v ní měnit filtr na Zákazníky. Teď třeba potřebuji vyfiltrovat TOP100. Zdrojem dat je OLAP kostka.
Pracuji se dvěma kostkama. Pro jednu funguje toto makro:
Kód: Vybrat vše
Sub TOP100_cyklus()
Dim a As String
Dim MyCells As Object: Set MyCells = Sheets("Sheet1").Range("D1", Range("D1").End(xlDown))
Dim MyCell As Object
With ActiveSheet.PivotTables("PTa").PivotFields("[Customer].[Company ID Number]")
For Each MyCell In MyCells
.AddPageItem "[Customer].[Company ID Number].[Company ID Number].&[" & MyCell & "]"
Next
End With
End Sub
Pro druhou kostku mi ale nefunguje ".AddPageItem" ale díky záznamu makra jsem zjistil, že funguje "VisibleItemsList"
Jenže toto makro mi nepřidává jednotlivé položky, ale pouze je mění a zafiltrovaný je postupně vždy jen jeden zákazník
Kód: Vybrat vše
Sub TOP100_cyklus()
Dim a As String
Dim MyCells As Object: Set MyCells = Sheets("Sheet1").Range("D1", Range("D1").End(xlDown))
Dim MyCell As Object
With ActiveSheet.PivotTables("PTa").PivotFields("[Customer].[Registration No].[Registration No]")
For Each MyCell In MyCells
.VisibleItemsList = Array( _
"[Customer].[Registration No].[Registration No].&[" & MyCell & "]")
Next
End With
End Sub