Trpezlivosť je jedna vec, ale to že je to úplne zbytočné, je vec druhá. Ak totiž nechcete aby Vám to zisťovalo a vypísalo iba jedinečné hodnoty z celého zošitu, ale chcete si ich tam pridať sám aj kvôli tomu, aby tam boli aj hodnoty, ktoré sa možno nevyskytnú nikdy (napr. kvôli tomu aby bolo vidieť, ktoré sa nepoužili ... neviem), tak makro absolútne stráca zmysel. Ale aby ste nepovedal, že Vám nechcem popísať svoje makro, tak som Vám to popísal, najlepšie ako viem (najlepšie ako sa mi chce :) ), len preto aby ste zo zaujímavosti vedel ako funguje.
Zo začiatku som nechápal, prečo chcete aktualizovať iba niektorý list samostatne, ale teraz už viem, že ste len zle vyjadril to, že nechcete aby došlo k chybe ak tam niektorý list nebude.
Každopádne tu máte príklad na vzorcové riešenie, ktoré Vám odporúčal už eLCHa, len som ho trošku upravil. Zohľadňuje podmienku, že ak je v stĺpci G=9 tak sa nepočíta, a celé je to v INDIRECT/NEPŘÍMÝ.ODKAZ aby sa vzorec neprepísal na chybu #ODKAZ! keď mu bude chýbať list. A kvôli jednoduchosti zisťovania počtu riadkov si zmente tabuľky na Tabuľky. Pritom pri postupnom dopĺňaní mesiacov dbajte na to, aby vzorce odkazovali na správny názov Tabuľky. Ja som ich nazval
Tabulka01
Tabulka02
Tabulka03
....
A tak sú aj použité vo vzorcoch. Excel Vám ich tak pekne číslovať nebude.
Ďalej si dajte pozor na názvy stĺpcov, teraz sa Vám volajú "g" a "h", tak sa Vám ale v reále volať určite nebudú, a preto je nutné si podľa toho reálneho názvu upraviť vzorce v stĺpci B v Četnost
=IFERROR(COUNTIFS(INDIRECT("Tabulka01[[g]:[g]]");"<>9";INDIRECT("Tabulka01[[h]:[h]]");"*"&B$1&"*");"")
=CHYBHODN(COUNTIFS(NEPŘÍMÝ.ODKAZ("Tabulka01[[g]:[g]]");"<>9";NEPŘÍMÝ.ODKAZ("Tabulka01[[h]:[h]]");"*"&B$1&"*");"")
kde za
[g]:[g] a [h]:[h]
napíšte reálne názvy stĺpcov (hlavičky Tabuľky). Napr. :
[Kód]:[Kód] a [Šarže]:[Šarže]
POZOR: Tým, že je to v INDIRECT (vyššie spomenutý dôvod), tak Vám Excel žiadne automatické premenovanie Tabuliek či Hlavičiek vo vzorcoch neurobí !
Teda konečné odporúčanie:
(toto urobíte iba raz)
-Použite vzorcovú metódu, alias eLCHa.
-Nahodte si reálnu Tabuľku v listoch ktoré tam chcete mať (asi 01-05), s reálnym umiestnením a reálnymi Hlavičkami, reálnymi dátami.
-Zmente si vzorce v B2:B13 v liste Četnost.
(toto urobíte raz za rok)
- Vyplnte si možné hodnoty B1:XYZ1
- Roztiahnite si vzorce z B2:B13 potiahnutím na toľko stĺpcov doprava, koľko je pre daný rok hodnôt. Kludne si hodnotu doplnte ak treba, len si k nej pretiahnete vzorce zo všetkých riadkov.
(toto urobíte raz za mesiac)
- Vytvorte list, odznova, alebo kopírovaním
- Upravte v danom mesiaci, názov Tabuľky, aby korešpondoval s názvom Tabuľky vo vzorci v danom riadku podľa mesiaca. Teda ak vytvoríte Tabuľka14, zmente to na Tabulka06 (v prípade júna/června)
To je odo mňa všetko...
Příloha: 31633_cetnost.zip (112kB, staženo 29x) citovat