Příspěvky uživatele


< návrat zpět

lubo napsal/a:

Pokud to nevadí, tak zkuste
=ZAOKROUHLIT(A1;MIN(3;3-CELÁ.ČÁST(KDYŽ(A1=0;0;LOG(ABS(A1))))))

Todle zdá se funguje, jak má.
Každopádně díky moc všem.

lubo napsal/a:

Zkuste jasně definovat, co vlastně chcete.

To co píšete nedává smysl. Podle uvedených příkladů, pokud je výsledek menší než 0,00005 je výsledkem nula. Což je z hlediska zmiňované přesnosti často chybné.

Tomu nerozumím, proč výsledek menší jak 0,00005? Nic takového nikde nevidím. Řeč je o výsledcích v rozmezí 0,001 až 9999. Čili cokoli co má 4 číslice. A samozřejmě pokud je výsledek větší jak 9999, tak se nesmí oříznout, to je nesmysl (viz výsledek 4650000 zaokrouhlený na 4560).

Na okraj VŠ Technická univerzita Ostrava. Myšlen tím patrně byl běžný výsledek bez speciálního požadavku na přesnost.

Ještě ale možná jedna drobnost. Ve všech těch vzorcích tady se zaokrouhluje. Což ale začne znepřesňovat navazující výpočty. Spíš bych uvítal něco, co by jen formátovalo zobrazení výsledku, ale neovlivňovalo jej. Jakože výsledek samotný může být třeba 12,355648 => zobrazí se 12,36 => ale dál se pro výpočty pracuje s 12,355648 …

Což tedy koukám vlastně řeší onen matematický formát zobrazení. Akorát s tím problémem, že ztěžuje čitelnost (já vím, je správně, ale matou tam ty Exx).

Stalker napsal/a:

Napadlo mě tohle hulvátský řešení:
=ČÁST(SUMA(A1:B1);1;KDYŽ(MOD(SUMA(A1:B1);1)<>0;5;4))*1Otestuj zda vrací očekávané výsledky.

Tak jsem tedy zkusil i "hulvátské řešení" :-)

U malých čísel funguje jak má (viz problémy s 0,0272).
Ale naopak nefunguje u výsledků, které jsou delší jak 4 číslice (např. výsledek 4650000 zaokrouhlí na 4560).

Darbujan napsal/a:

https://stackoverflow.com/questions/48179094/round-numbers-in-excel-to-4-digits

Tak se mi ty vzorce do CZ Excelu podařilo překlopit, ale pořád to není ono. Když je výsledkem namátkou 0,0272 nebo 0,0068, tak to nefunguje, plive to stejná čísla (0,0272 a 0,0068 namísto 0,027 a 0,007)

=ZAOKROUHLIT(B2;4-(DÉLKA(CELÁ.ČÁST(B2)))+(B2<1))
v B2 je zaokrouhlované číslo

Stalker napsal/a:

Napadlo mě tohle hulvátský řešení:
=ČÁST(SUMA(A1:B1);1;KDYŽ(MOD(SUMA(A1:B1);1)<>0;5;4))*1Otestuj zda vrací očekávané výsledky.

Namísto SUMA(A1:B1) budou jiné vzorce, to tam budu muset mít každý z těch vzorců 2x? To se mi moc nelíbí.

lubo napsal/a:

Zkus:
=ZAOKROUHLIT(A1;B1-CELÁ.ČÁST(KDYŽ(A1=0;0;LOG(ABS(A1))))-1)
a1 je číslo
b1 je počet číslic

V zásadě to víceméně funguje, ale jsou problémové výsledky, kdy to nefunguje. Namátkou to nefunguje, když je v A1 hodnota 0,0272 (vyplivne to 0,0272 namísto 0,027).

V tom odkazu níže je podobný vzorec (=ROUND(A1,4-(1+INT(LOG10(ABS(A1))))), ten má stejný problém.

Darbujan napsal/a:

https://stackoverflow.com/questions/48179094/round-numbers-in-excel-to-4-digits

Vida, stejné téma, ale pro anglický Excel. Mám český, a tam mi to nefunguje.

Nestačí, protože u matematického formátu musím napevno nastavit počet desetinných míst. Jenže pro výsledek v rozmezí 0,001 až 9999 bude ta desetinná čárka pohyblivá.

Výsledek bude mít stále 4 číslice. A desetinná čárka v něm buď nebude vůbec, anebo se bude pohybovat sem a tam.

Jde v Excelu nějak nastavit vzorec / formátování buněk, aby se "zaokrouhlovalo" jen na 4 číslice?

Na VŠ nám neustále kladli na srdce, že z hlediska přesnosti nemá smysl řešit více jak 4 číslice ve vypočteném výsledku. Tedy např. že stačí výsledek 12,65 nebo 1,985 nebo 113,5 nebo 5469. Desetinná čárka může být ve výsledku kdekoli (nejde tedy o zaokrouhlení na 4 desetinná místa, ale na celkem 4 číslice výsledku).

Mám mraky výpočtových listů v Excelu, kde se výsledky podle zadávaných vstupních hodnot mohou pohybovat od výsledků menších jak 1 až po výsledky větší jak 1000. A moc mě nebaví pořád ručně výsledky přeformátovávat tak, aby ve výsledku byly jen 4 číslice. Jde to nějak automatizovat?

Tak tedy ještě jednou děkuji.

Nějak jsem to nasoukal do mojí větší tabulky, a zdá se, že to tam funguje jak má.

Díky, díky! 1


Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura III

Oblíbený formulář Faktura byl vylepšen a rozšířen. Formulář faktura III
Více se dočtete zde.

Aktivní diskuse

VBA vyhledat a zapsat

Stalker • 27.9. 23:02

VBA vyhledat a zapsat

Fantasyk • 27.9. 22:15

VBA vyhledat a zapsat

Stalker • 27.9. 22:04

VBA vyhledat a zapsat

Fantasyk • 27.9. 21:03

vyhledávání s maticí

Fantasyk • 26.9. 11:35

Automatické doplnění

marjankaj • 25.9. 14:27

Automatické doplnění

Dingo • 25.9. 14:25