Změna asociované buňky nevyvolá událost Change na jejím listu. Je nutné přímo k buttonům připojit výkonná makra - viz příloha.
S potěšením odvolávám svou výstrahu před obecnou pomalostí práce doplňků. Ve shodě s doporučením od elCHa jsem vytvořil doplněk s dostačující dobou trvání akce (kvůli měřitelnosti času). U tohoto doplňku mi měření času ukázalo prakticky shodný čas jak pro volání z doplňku, tak pro volání procedury ze souběžně otevřeného sešitu.
Zdá se tedy, že dříve zjištěné zpomalení souvisí s velice nestandardním obsahem algoritmu, jehož dobu jsem měřil před spuštěním tohoto vlákna. Nevím sice, co konkrétního se v něm dělo, ale vypadá to, jako kdyby se ten doplněk na řadu sekund dostal do stavu nečinnosti, což právě vedlo na opravdu významné prodloužení doby zpracování.
V příloze je srovnávací sešit, napsaný jako doplněk. Provádí operaci, které bylo věnované nedávné vlákno, a to vygenerování zamixované oblasti unikátních hodnot. Pro rozumné porovnání časů je vhodné zvolit oblast alespoň milion buněk velikou. Opakované pokusy s milionovou oblastí na mé mašince trvaly (pro oba způsoby použití) mezi 3,1 a 3,5 sec (zřejmě v závislosti na intenzitě procesů na pozadí).
Lidi dobrý, pochopte, že slovní popis dat přestal fungovat s nástupem algebry ve středověku a s příchodem datových souborů v novověku. Kdo má soubory, ušetří sobě i nám spoustu času!
Často pomůže Google, ale někdy i deset let stará knížka. Mockrát už mi posloužila tabulka z přílohy.
Co takhle COUNTIF ?
Tak to mne napadá už jen "balíček poslední pomoci": pokud zabírá alespoň něco, pak to "něco" lze volat z makra, které si vytvoříte. Jestli ale máte makra zakázaná (což nevím), pak už mne nenapadá nic dalšího.
Vedle Shift-F9 existuje "surovější" Ctrl-Alt-F9, který si vynutí přepočet úplně všech vzorců v celém sešitě. Kontrola, že nemáte zablokovanou aktualizaci propojení, je velmi dobrá rada od elCHa, na kterou jsem si nevzpomněl.
Rád modifikuji chování kláves, abych jimi mohl volat akce, ke kterým se jinak dostanu jen pomocí naprogramovaných tlačítek. Mnohé klávesové zkratky ale používá Excel pro volání vlastních zabudovaných služeb. Najít neobsazené klávesové zkratky v Excelu je s postupem let stále obtížnější. A stává se mi, že dokonce obětuji málo využívané standardní chování, abych získal zapamatovatelné klávesy pro své potřeby.
Před chvílí jsem při hledání použitelné klávesové zkratky narazil na kombinaci AltGr + směrová šipka. Výsledek mne zaskočil. Nikdy předtím jsem získaný efekt nepotkal a nevím, jestli to není nová vlastnost mého W-10. Ze škodolibosti jsem se přikradl k počítači své ženy a použitou zkratkou jsem zaklel její monitor. Efekt žertíku byl skvělý a šok nelíčený. Vzhledem k naprosté neškodnosti může posloužit k pobavení i vám. A obráceně: pokud se vám něco takového stane, budete vědět, jak z toho ven .
Zkuste v hlavním workbooku provést ruční přepočet sešitu (nebo přepočet vyvolejte jinou akcí). Mělo by to pomoci. Proč se chování po reinstalaci změnilo, mne zatím nenapadá.
eLCHa napsal/a:
Pokud Vás to zajímá - připravte jiný kód, dejte jej do sešitu a do doplňku. Otestujte a pokud se to bude chovat stejně, vložte to sem. Třeba na něco přijdeme. Pokud se budeme bavit teoreticky, určitě nepřijdeme na nic.
Moje špatná zkušenost s více Excely na jedné mašině je zase taková, že automatický update od Microsoftu (ve Windows 10) pro souběžnou instalaci E-2010 a E-2013 mi rozhodil chování Excelu 2010. Konkrétně jde např. o událost BeforeRightClick na listu, která u mne přestala respektovat použití parametru Cancel. Nikomu jinému z dotázaných se to nestalo; ti ale měli v mašině vždy jen jediný Excel.
Toto je klasická diskuse o vytržené a nepodstatné zmínce v příspěvku. Měl jsem držet hubu o tom, co ten doplněk dělá. Podstatou příspěvku je, že procedura v doplňku počítá čtyři a půl krát pomaleji, než když je spuštěná z paralelně spuštěného sešitu. To by vás, pánové, mělo zaujmout, a ne nějaký blbý šperhák. To zpomalení byla podstata mého příspěvku. A zajímalo mne, jestli už někdo podobný zpomalovací efekt zaregistroval, případně pro něj dokonce zná vysvětlení. Toto není žádné filozofování, toto je zásadní otázka k výkonnosti Excelu.
K obsahu doplňku. Nehodlám tu proceduru zveřejňovat. Našel jsem ji na volně dostupném místě na internetu a necítím k ní žádná práva pro její další šíření. Jednak nejsem autorem algoritmu, druhak cítím jeho nebezpečnost v nepovolaných rukách. Ctím totiž zásadu, že když někdo něco pod heslem zamknul, nepřál si, aby tam druzí chodili. A obráceně: pokud něco, co jsem nezamknul, dám volně na internet, musím počítat s tím, že to jiní použijí. Tohle se snad dá pochopit, dodržovat a respektovat.
Zaujal mne výrok "know-how na listu bez maker je umění králů". Každé know-how je uměním králů. Vždycky se najdou skuteční králové, kteří ho vytvářejí, ale i ti, kteří ho tvořivě používají, a také ti, kteří ho bezostyšně kradou. Jestli se to děje na listu bez maker, není podle mne zas tak podstatné.
Odkaz, který poslal AL, je užitečný. Není to tak dávno, kdy jsem si chtěl po letech oživit zadávání hlavičky pro rozšířený filtr a k mému překvapení jsem ten popis v nápovědě Excelu nenašel. Kdysi tam se zárukou byl. Jestli jsem špatně hledal, nebo ho vývojáři v návodu vynechali, to nevím. Každopádně jsem si musel ze svých zapamatovaných střípků tu hlavičku metodou pokus/omyl poslepovat bez nápovědy.
Zaslaný odkaz mi teď chybějící výbavu nápovědy v podstatě vyplnil. Takže jsem si tu stránku pro strýčka příhodu z webu stáhl i s obrázky do svého archivu. Dík za odkaz!
Nápad nainstalovat si zkušební verzi slovenského Excelu je hezký, ale nemám dobrou zkušenost s více Excely v jedné mašině. Žádná další pomoc se nekonala, a tak jsem se rozhodl, že to napíšu a pustím syrové do světa. Pokud to nikdo nepoužije, zůstane to v syrovém stavu. Pokud mne někdo upozorní na případné vady, zkusím s tím něco udělat.
Použitá metoda v podstatě brání tomu, aby nástroj mohl sloužit ve slovenském Excelu. Překlad z češtiny do angličtiny a zpět se řádně a automaticky provede pouze v českém Excelu, zatímco převod mezi slovenskou a anglickou verzí se v podstatě týká pouze interpunkce ve vzorcích, což provádím algoritmicky.
Samotné použití je primitivní. Kdekoliv na internetu si nahraji slovenské znění vzorce pomocí Ctrl-C. Přejdu do otevřeného převodníku a klepnu na připravené tlačítko. Pokud bude převodník vzorci rozumět, nabídne jeho anglickou i českou podobu. Když do schránky nahraji české znění vzorce, mohu druhým tlačítkem získat anglickou a slovenskou podobu. Ale znovu musím zopakovat - běhá to jenom v českém Excelu
Když nástřel, tak nástřel. Na vzorečky jsem chabrus a víc automatiky jsem do hry nedokázal vymyslet. Úplně jiné kafe by mohlo vzniknout na stejné struktuře s použitím VBA. Do toho jsem se ale nepustil, když tvoje zadání je čistě vzorečkové.
Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.
Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.