Fórum pro uživatele kancelářského balíku OpenOffice | LibreOffice
 

#1 21. 10. 2017 21:35:15

Gifton
Člen
Registrace: 21. 10. 2017
Příspěvků: 1

Odčítanie po nulu

Vedel by mi niekto poradiť vzorec na odčítavanie po nulu? čiže nebude pokračovať v odčítavaní do minusu  ale iba po nulu. Príklad: 1000-2000 nebude hodnota  -1000 ale ukáže 0(nulu)   Ďakujem pekne za prípadné rady.

Offline

#2 21. 10. 2017 22:52:52

lp.
Člen
Registrace: 24. 9. 2009
Příspěvků: 791

Re: Odčítanie po nulu

=max(1000-2000;0)

Offline

#3 22. 10. 2017 08:39:15

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 2,710

Re: Odčítanie po nulu

Gifton napsal(a)

Vedel by mi niekto poradiť vzorec na odčítavanie po nulu? čiže nebude pokračovať v odčítavaní do minusu  ale iba po nulu. Príklad: 1000-2000 nebude hodnota -1000 ale ukáže 0(nulu)   Ďakujem pekne za prípadné rady.

     Přestože uživatel "lp." odpověděl, domnívám se že odpověď je stejně lakonická jak je neúplný dotaz. Pro použití v tabulkovém procesoru by mělo být zřejmé, že testovaná hodnota by měla být vyjádřena odkazem. Takže například v buňkách sloupce A je seznam testovaných hodnot. Potom by původní odpověď měla být provedena pro sloupec buněk B například v buňce B1 takto takto :

=max(1000-A1;0)

     Dlužno dodat, že pro málo zkušeného uživatele je toto řešení málo logické protože vzorec užívá test ma maximální hodnotu. Já v tomto okamžiku nejsem schopen ničeho jiného, nežli vyjádření domněnky, že uživatel "lp." měl na mysli vzorec maticového typu. Nemohu to nyní otestovat a tak končím jen u toho, že uživatel "lp." buď z nějakého důvodu nemohl svoje řešení komentovat, nebo si neuvědomil že takový dotaz mohl podat pouze nezkušený uživatel.


     Osobně bych doporučil logický testem u kterého je zřejmé na co se logické posouzení odkazuje například pro test hodnoty v buňce A1 testované v buňce B1 :

=IF(A1-1000 <=0;0;A1-1000)

     Ovšem takové jednoduché zadání nemusí odpovídat potřebě autora dotazu, protože může jít o test dvou proměnných z nichž prvá je v buňce (sloupci) A1 a druhá porovnávaná v buňce B1, respektive sloupci B. Potom takto pro dotaz v buňce C1 :

=IF(A1-B1<=0;0;A1-B1)

     Nedomnívám se, že by uvedené lakonické vyjádření uživatele "lp." trpělo nějakou věcnou či formální vadou, nebo že by uvedený způsob řešení autor dotazu nebyl schopen úspěšně aplikovat, ale i celkem fundovanému tazateli nemělo uniknout že dotaz podal tak jako by vyžadoval pouze fakultativní nasměrování. Proti tomu stojí skutečnost že pokud by byl schopen odpověď akceptovat s úrovní průměrného uživatele věděl by že na takto elementární operaci lze použít například mnou uvedené řešení pomocí IF a zmínil by to alespoň poznámkou. Z dotazu je zřejmě, že dotaz uměl popsat co do formální představy bezchybně.


     Omlouvám se za to, že takovou "maličkost" komentuji s nádechem despektu ke kolegovi "lp." Já si ho velice vážím a vím že je nejlepší z těch kteří jsou ochotni pomoci včetně mne. Pravdou je že jeho odpovědi bývají vždy v nejstručnější možné formě. Zde zřejmě podle stylu popisu usoudil, že pokud tazatel přesně popsal svou představu, neměl potřebu lépe dotaz doplnit. Já bývám právě za opačný přístup velice často kritizován.


Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte tak orientaci na fóru při vyhledávání řešení problémů
JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#4 24. 10. 2017 17:59:27

lp.
Člen
Registrace: 24. 9. 2009
Příspěvků: 791

Re: Odčítanie po nulu

Otázka zněla, "jak vybrat větší číslo ze dvou, kde jedno je získáno výpočtem, druhé je konstanta".
Podle mého názoru je přirozené použití funkce MAX a komentování tohoto prostého faktu mi připadá zbytečné.


K použití IF a MAX (nebo MIN)

1. Funkce MAX dá kratší zápis, kratší považuji současně za přehlednější
2. V případě časově náročnějšího vzorce se tento vypočítá vždy jen jednou - při větším počtu vzorců je úspora času docela znát.
3. Často jsou k vidění vzorce IF(AND(A>B;A>C);A;IF(B>C;B;C)). Ekvivalentní vzorec MAX(A;B;C) považuji za přehlednější.


ps. Šlo také doporučit uživatelský formát "0;0;;" (vzorec v případě záporného čísla "ukáže" nulu).

Offline

Zápatí