Tento tip je pro pokročilé uživatele, kteří mají zkušenosti s VBA a zpracováním kontingenčních tabulek. V případě, že se chcete/potřebujete seznámit s tvorbou kontingenčních tabulek, můžete vyzkoušet některý související článek.
Zpět k příkladu. V poli Datum jsou všechny dny z kalendářního roku a pokud by jste potřebovali skrýt data od ledna až po květen, asi by se nikomu moc nechtělo odškrtávat cca 150 položek.
Popis řešení.
V ukázkovém souboru na listu s kontingenční tabulkou jsem definoval název Datum s odkazem na buňku N2
. Do této buňky vložíme datum, od kterého chceme položky zobrazit. V makru bude datum z buňky Datum předáno proměnné mDate
. V cyklu, který prochází všechny položky (PivotItems - Datum je v proměnné iDate
) nastaví vlastnost Visible = True
(zobrazí) u všech, které splní podmínku mDate >= iDate
. Pokud podmínka nebude splněna, bude nastavena vlastnost položky Datum na Visible = False
(skryje).
Obslužné makro vám zajistí nastavení položek řádově v sekundách. V makru si můžete změnit podmínku, PivotFields
a tím ho přizpůsobit vašim potřebám. Vzorovou tabulku i s makrem si můžete prohlédnout v souboru Nejste přihlášen(a).
Komentáře
Stačí v makru upravit podmínku IF.citovat
po kliknutí na tlačítko to hlásí chybu: Není možné nastavit vlastnost Visible třídy PivotItem. Poradíte?citovat