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).
Pokud potřebujete v kontingenční tabulce skrýt velké množství položek (PivotItem), bude se vám hodit tento tip. Pro demonstraci použiji denní plán pro celý rok a v kontingenční tabulce chci zobrazit jen plány od určitého data. V praxi by to znamenalo skrýt například 150 položek (dní).
Facebook
Google +
Linkuj
QR kód
E-mailem
PDF
RSS nejnovější články
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