A co toto:
=HODNOTA(DOSADIT(A1;".";".1.1900 "))*24
(pochopitelně jen pro max 31 dnů)
Po pravdě nechápu, co stále řešíte. Už jsem to popsal.
48486_hacik...
Hárok1:
a)
F3: =DATUM(ROK(A3);MĚSÍC(A3);DEN(A3))
G3: =ČAS(HODINA(A3);0;0)
H3: =F3+G3
b)
E3: =A3-F3-G3
c)
B3: =SVYHLEDAT(H3;A:A;1;0)
C3: =SVYHLEDAT(H3;A:A;1;1)
D3: =SVYHLEDAT(H3+0,0000000001;A:A;1;1)
Sloupec E obsahuje rozdíly v hodnotou ve sloupci A a "přesnou" hodnotou. Přímo to odečítat nelze kvůli zaokrouhlení.
Pak jsou ukázány varianty hledání. Použil jsem VLOOKUP kvůli čitelnějšímu porovnání.
Ukazuje se, že i "přesné" vyhledávání dokáže eliminovat malé rozdíy mezi hodnotami.
Ale 16.10. chyba narostla z -0,000000000002425
na -0,000000000004851 (u mne na tomto stroji v.2010) a tento rozdíl už "přesné" hledání nepobere.
(Připomínám, že interně se ukládá více míst než viditelných 15, pokud je chci vidět, musím odečítat po částech.)
Přibližné hledání (protože hledaná hodnota je na těchto datech o něco menší než tabulková) v obou případech najde co má najít.
Pokud bychom hledali hodnotu ze sloupce A ve sloupci E, varianta bez přičtení konstanty dá chybný výsledek tam, kde "přesná" shoda nenajde nic.
Na harku 2 ten přechod není tak zřetelný.
Pokud některý datum počítáš, tak ty odchylky mohou být o dost větší.
Tj. dolaď si konstantu a mělo by to fungovat.
ps. Ty přílohy bez vzorců, kde není poznat co se hledá a co dělá problém, jsou na ...
Ty odchylky se mohou nakumulovat na obě strany a mohou být v hledané položce i v prohledávané tabulce.
Používat MATCH, ?LOOKUP na časové údaje není s přesnou shodou není dobrý nápad.
Při generování časů (při použití vzorce je to skoro jisté) se uložený čas liší od zobrazované obvykle o nějaké malé zlomky sekund. Vidět nic není, ale přesná shoda nic nenajde.
Lepší je (u setříděných hodnot) použít přibližnou shodu, kdy k hledaná hodnotě trochu přidáme. Funkce při tom hledají poslední hodnotu která je rovna nebo je menší než hledaná. tj:
MATCH(c1 + 0,000000000001; C:C;1)
to číslo je dobré odladit, při generování nepovedeným vzorcem se chyba může nakumulovat docela dost.
add so, ne.
Spočte se počet pracovních dnů, a pak se použije workday s náhodně vygenerovaným posunem do počtu prac. dnů.
=WORKDAY(DATUM(ROK(DNES());ČÁST(A1;NAJÍT(".";A1)+1;1000)/1;ZLEVA(A1;NAJÍT("-";A1)-1)/1);RANDBETWEEN(0;NETWORKDAYS(DATUM(ROK(DNES());ČÁST(A1;NAJÍT(".";A1)+1;1000)/1;ZLEVA(A1;NAJÍT("-";A1)-1)/1);ČÁST(A1;NAJÍT("-";A1)+1;1000)/1)))
Přepočty se dají omezit např: =když(b1="XXX";<obluda>; a2)
vzorec je v a2 a jsou povoleny iterace.
@lubo cena za 50kg je 500 Kč. 0-99kg = 500 Kč
kolik stojí 50 kg?
Doporučil bych raději v ceníku uvádět spodní mez intervalu.
A nestačí přesunout jméno do stránkového pole a pak v možnoste kont. tabulky vybrat "Zobrazit stránky filtru sestavy"?
To -int(a2) odebere všechny dny.
Tj. (pokud tam máš opravdu jen ten den) stačí a2*24 (+ nastavit číselný formát)
Případně, pokud tam máš den + nějaký další rok, jako třeba 2020, můžeš zkusit =(A2-INT(A2))*24 + den(a2)*24.
(předpokládám, že v buňce je vlastní formát, něco jako "[>=1]d.h:mm:ss;h:mm:ss")
@elninoslov
Vlastnost SpecialCells má "drobnou" chybičku. Pokud je aplikována jen na jednu buňku je dobré tento případ ošetřit samostatně. V listu klidně vybere celý sešit, tady, pokud je "n" jen na prvním místě v seznamu, vybere celý sešit mimo skrytých řádků a smaže ho. Tj. smaže hlavičku i první řádek v seznamu.
Osobně považuji za nejrychlejší, pokud netrvám na použití ClearContents, variaci na téma: Načíst do pole oba sloupce, příslušné pole nahradit prázdným řetězcem a pak celé pole vrátit zpět.
Použij rozšířený filtr. Tam už to je hotové.
U mne to byly nabourané knihovny po instalaci verze excelu. Občas se aktualizovala stará verze (co už nebyla) a to přepsalo nastavení novější verze.
Vyčištění bylo dost obtížné.
Dříve to šlo pomocí PowerView, MS tuto funkci zavedl, potom skryl, teď ji navíc blokuje. Jde ale data natáhnou do PowerBI a tam to namalovat.
Pokud v Excelu. Lze zprovoznit PowerView, data poslat do datového modelu a namalovat graf. Jinak se musí data rozdělit do více řad - funkce, powerquery, kontingenční tabulka + vzorce.
Graf použij bodový.
=VYHLEDAT(1E+307;A3:E3;A3:E3)
Ověření dat funguje jen v některých případech a je dobrou pomůckou pro toho,kdo chce kontrolovat vkládaná data. Neúmyslné obejití kontrol např. kopírováním, je poměrně běžné. Zabezpečení je ale i při použití vba velmi obtížné.
Takže, pokud uživatel nechce úmyslně kontroly obejít, lze částečně tuto chybu eliminovat. Např. bez VBA omezím výběr jiné buňky v listu, ale už nezabráním ctrl-c v jiném sešitu, případě i v jiné aplikaci.
Pokud uživatel chce zadat nepovolená data, tak je zadá, i když možná ne snadno.
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.