No jestli je těch vzorců 750, a všechny by se měly testovat, tak by se měla iterovat adresa sledované buňky. nejlepší by asi bylo vložení nějaké podmínky, která by omezila počet všech iterací (zobrazení a skrytí), nebo iterace přerušovat například po 30-ti pomocí MsgBoxu (printu). Pomocí funkce "Wait" zpomalit generování tak, aby to člověk mohl sledovat a popřípadě se vrátit zpět. MsgBox by měl vypsat aktuálně "navštívené" buňky - tedy nejlépe první a poslední.
Proto by bylo nutné postavit Makro podle Dana Sedláčka, ale bez použití inputboxu a s deklarací "position" - tedy lépe to napíšu sem:
bunka = list.getCellRangeByName(adresa).CellAddress - zde by se musela iterovat adresa např: ("A"&číslo bunky iterovat), pokud jsou sledované vzorce jen ve sloupci "A". (to Danovo makro s inputboxem nepotřebuje).
V jiném případě by bylo vhodnější :
bunka = list.getCellRangeByPosition(ČísloSloupce,ČísloŘadku).CellAddress. Takže když jsou sledované vzorce také v řádku mělo by se iterovat (sloupec se mění, řádek stojí), následně se pohne číslo řádku o +1 a sloupce začnou například od nuly (sloupec A = číslo "0").
Je to proto, že i při použití inputboxu (každá položka po 30ti) budeme mít 25 voleb a už vidím co se stane po malé přestávce. Také může vzniknout jiný požadavek buď jednotlivě zobrazit a hned smazat závislost, nebo naráz zobrazit těch 30 závislostí (např. předchůdci), prostudovat (čas je neomezený v případě MsgBoxu, nebo printu), odznačit a mít možnost zvolit následníky, což ne vždy budeme potřebovat.
Takže opravdu funkční makro by mělo být ovládáno vícetlačítkovým MsgBoxem, který by měl umořnit vícenásobně opakovanou operaci stejného druhu - pro variantu předchůdců i následníků nezávisle, a také nezávislé smazání zobrazených závislostí (možná i jednotlivě) podle jednotlivých druhů - plus skok na další, nebo předcházející úsek + zastavení makra. Proto místo inputboxu bych použil pole relativně deklarované a operace v něm pomocí MsgBoxu.
Editoval neutr (18. 4. 2012 21:09:37)
Moje e-mailová adresa
Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte orientaci při vyhledávání řešení JAK OZNAČIT TÉMA ZA VYŘEŠENÉ