@Vovka
mno když se Vám, tak líbila. Prosím, abyste si žádný argument nebral osobně.
Obávám se, že to není tak jednoduché. Pokud by oprava změnila chování funkce a v některém starém sešitu by tu chybou někdo vědomě využíval, začal by se ten starý sešit chovat vadně. Změna chování funkce si podle mne přímo vynucuje nové jméno funkce.
Ano toto je pravda. Když vezmeme v úvahu, že na světe používají excel miliony uživatelů tak je téměř jisté, že tento případ někde existuje. Možná jich budou i tisíce. Pokud toto někdo má, jedná se o pokročilého uživatele, který na to přijde, zjistí příčinu a opraví si. Já teď jen přemýšlím, jestli je lepší přesvědčit "pár" pokročilých uživatelů, že si mají svá řešení opravit nebo nutit miliony ostatní uživatelů aby s každou verzí kontrolovali, jestli náhodou není nová varianta jejich funkce. Rozhodnutí není na mne, přesto si myslím, že takto je to špatně. Že to uživatelé dělat nebudou lze vidět i tady na tomto fóru.
Tohle by v žádném případě nemělo zaniknout! Je to pěkné a úplné řešení toho problému
Není to úplné řešení. Co tohle?
=MROUND(A1;SIGN(A1)*A2)
Každé tvrzení má mít své opodstatnění. Proto jsem provedl svůj výkonový test, o kterém píšu shora
Toto je věčná diskuse ne nepodobná POSUN vs INDEX (volatilní vs nevolatilní). Když jsem začínal, tak jsem si to také zjišťoval - hledal co je lepší? Vzhledem k tomu, že excel je napsán (nebo byl, nevím jak je to teď) v jazyce C, resp. C++ a UDF jsou ve VB... - ale to už je akademická debata. PC se stále zrychlují tak toto srovnání už je asi zbytečné. Teď ale ta praktická část. Nezpochybňuji, že UDF může být rychlejší (stejně jako jiné funkce - já si například napsal vlastní filtr souborů v adresáři, protože integrovaný na 1 pc jel bleskově a na druhém několik minut!). Ale
1) UDF je pomalejší, protože si ji musím napsat a odladit.
2) UDF je pomalejší, protože musím uložit soubor s povolenými makry (nebo uložit do bezpečného adresáře).
3) UDF je pomalejší, protože musím při spuštění povolit makra.
4) UDF je nehorázně otravná a pomalá, když potřebuji ladit nějaký projekt (krokovat) a je v listu obsažena několikrát (mohou to být stovky - vlastní zkušenost).
Mohl bych pokračovat, ale toto pro mne jsou hlavní důvody. A ještě jeden - za excel jsem si zaplatil a proto ho nepoužívám jako DataGrid, ale jako tabulkový kalkulátor. Pro mne je v excelu nejlepší programátor ten, který napíše nejméně kódu.
A k Vašemu výkonovému testu - záleží PC od PC. Možná Vás potěší, že u mne to v laboratorních podmínkách (Váš test - bez vlivu na list) RoundX jednoznačně vyhrála.
Pak jsem ji integroval do souboru, který obsahuje desetitisíce výpočtů a události change a je prošpikován kódem. Tam už prohrála a to jsem musel počet cyklů snížit na 100 (oba spodní případy - u toho prvního jsem zapomněl změnit text).
citovat