Stránka 1 z 1
Filtr vazba mezi KontTAb a oblastí dat Vyřešeno
Napsal: 26 bře 2012 13:33
od VALL
Ahoj,
Hledám řešení k následujícímu:
Mám kontingenční tabulku, která je navazbena na oblast dat. Když v KontTab vyberu požadovanou hodnotu (projekt), tak aby byla ta samá hodnota automaticky vložena do filtru datové oblasti a tyto data zafiltrovány, viz příloha.
Re: Filtr vazba mezi KontTAb a oblastí dat
Napsal: 26 bře 2012 21:14
od cmuch
Ahoj,
vyřešeno pomocí makra zpouštěného změnou výběru v kontingenční tabulce.
Re: Filtr vazba mezi KontTAb a oblastí dat
Napsal: 27 bře 2012 07:46
od VALL
díky, funguje skvěle.
--- Doplnění předchozího příspěvku (27 Bře 2012 08:00) ---
Ještě bych požádal o jedno vylepšení. V listě KonTab (dle přílohy), je jiná kontigenční tabulka. Když v listě Data vyberu ve filtru sestavy hodnotu (projekt), tak v listě KonTab v dané kontigenční tabulce, se zafiltruje stejná hodnota.
Re: Filtr vazba mezi KontTAb a oblastí dat
Napsal: 27 bře 2012 09:15
od cmuch
Upraveno i pro Excel 2007 (původně jen 2010)
Místo stávajícího makra vlož toto
Kód: Vybrat vše
Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
Dim nazevprojektu As Variant
'ulozeni nazvu projektu
nazevprojektu = ActiveSheet.PivotTables("Kontingenční tabulka 2"). _
PivotFields("Project2").CurrentPage
If nazevprojektu = "(All)" Then 'pri vybrani "Vse"
'nastaveni filtru pro zobrazeni vseho
ActiveSheet.Range("$A$13:$N$" & Cells(Rows.Count, "N").End(xlUp).Row).AutoFilter Field:=1
'nastaveni dat i pro kont.tab na jinem liste
Sheets("KonTab").PivotTables("Kontingenční tabulka 1"). _
PivotFields("Project2").CurrentPage = "(All)"
Exit Sub
End If
'nastaveni filtru
ActiveSheet.Range("$A$13:$N$" & Cells(Rows.Count, "N").End(xlUp).Row).AutoFilter _
Field:=1, Criteria1:=nazevprojektu
'nastaveni dat i pro kont.tab na jinem liste
Sheets("KonTab").PivotTables("Kontingenční tabulka 1"). _
PivotFields("Project2").CurrentPage = nazevprojektu
End Sub