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

#1 3. 3. 2016 18:16:20

Globus
Člen
Registrace: 22. 2. 2016
Příspěvků: 2

LO Calc-hlídání expirace

Zdar, mám problém a hned popisuji. Skladové hospodářství a v něm hlídání expirace zboží. Potřebuji pole v němž bude datum nákupu nebo fasování a při konci doby použitelnosti se bude měnit barva pole, ale datum fasování nebo výroby musí zůstat nezměněný. Mám pole s datem nákupu nebo výdeje a přes podmíněné formátování se mi barva pole mění. Například vydám ze skladu pracovní boty a do pole zapíšu datum výdeje 3.3.2016. Ke konci životnosti, nebo expirace se mi musí měnit barva pole s datumem a to takhle: 22 měsíců zelená, 23 měsíc žlutá, 24 měsíc červená a to vše s datem výdeje tedy 3.3 2016. Zakopaný pes je v tom, že neumím nastavit automatické hlídání expirace s upozorněním změnou barvy v jednom poli.
Dává vám to smysl? Jestli jo, umí to někdo vyřešit?
Díky

Offline

#2 3. 3. 2016 23:31:15

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

Re: LO Calc-hlídání expirace

Nějak mi uniká proč to nejde v jednom políčku. Ve více buňkách to funguje?
     Napadá mne, že odkazujete v podmíněném formátu pomocí vzorce na porovnání jedná startovní buňky a porovnáváte to pomocí aktuálního data.


     Podle mne by se to mělo odkazovat vzorcem který postupně vyvolává nějaké hlášení. Například "ještě 2 měsíce", nebo ještě měsíc ap. Podmíněný formát může reagovat právě na tu hlášku.
     Podobně vzorec může vyhodnocovat jen číslo a podmínka formátu se postaví jednoduše na číslo v buňce (tedy volba "buňka obsahuje"). To má výhodu při kopírování podmíněného formátu. Vzorce vyžadují někdy absolutní a jindy relativní odkazy a to při kopírování blbne.


     Vlastní vzorec může mít několik variant vyhodnocení času, ale vždy asi bude základem TODAY(). Takže Například někde umístíte funkci TODAY - do jediné buňky. Tu pak odkazujete absolutní adresou. Bude li například v buňce D1[=TODAY()] bude ve vzorci (třeba C1) odkazováno na buňku A1 (v té je datum nákupu) a referenční buňku D1. Například :
C1 vzorec[=INT(($D$1 - A1)/30]
--- výraz $D$1 je absolutní adresa a z každé buňky se vloží údaj z této buňky.
--- výraz A1 je relativní adresa a při kopírování se přepisuje
    Když tedy takový vzorec zkopírujeme do sloupce C, bude každá z buněk načítat právě jen buňku D1, ale bude ji porovnávat s příslušnou buňkou ve sloupci A.


     Rozdíl "$D$1 - A1" vyjádří číslo jako počet dní mezi startovním a aktuálním datem. Možná je to divné, ale jsou to čísla i když to tak nevypadá. Když by to nefungovalo tak je to zadáno jako "Text @".Podíl ($D$1 - A1)/30 zajistí počet průměrných měsíců. A vzorec INT() zajistí zaokrouhlení na celé násobky 30-ti dolů. Když bude podíl například 6,95 tak INT(6,95) = 6.
     No a na tohle číslo můžeme postavit podmíněný formát například
"obsah buňky C4" < 0 - potom barva šedivá (už má hajzlík zase nárok :-),
"obsah buňky C4" = 0 - potom barva zelená,
"obsah buňky C4" = 1 - potom barva modrá,
     Pokud používáte Apache OpenOffice tak tam jsou jen 3 možnosti formátu - tuto skutečnost akceptuje předcházející příklad, ale s tím si jistě poradíte.
     Je to ale možné vyladit vzorcem :

=IF(INT(($D$1 - A1)/30)>1;"zbývá "&INT(($D$1 - A1)/30)&" měsíců";INT(($D$1 - A1)/30))

     V buňkách bude buď hláška kolik měsíců zbývá, a když to bude 1 , 0 nebo to bude menší nežli 1 tak to bude jen obarvené - ale jen číslo.


     Pokud jsem to pochopil nesprávně - pošlete raději ukázku (nejlépe pomocí "uložto.cz")


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

#3 5. 3. 2016 17:22:00

poky
Člen
Registrace: 23. 9. 2005
Příspěvků: 69

Re: LO Calc-hlídání expirace

neutr, ty seš snad chodící OpenOffice.

Nechtěl bys sepsat tvé odpovědi + nějakou omáčku kolem a vydat to v pdf nebo se zeptat v Liberixu, jestli by ti to nevydali?
Vzhledem k tvým zkušenostem by stálo za to napsat nějakou příručku a vydat ji, zkusit zůročit tvé znalosti a předat je ostatním.
Pardon, že se to netýká problému. smile

Offline

#4 5. 3. 2016 20:24:01

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

Re: LO Calc-hlídání expirace

poky děkuju - je to asi od Tebe poklona.
    Takový, nebo hodně podobný nápad jsem už měl vícekrát. Chodící zatím jsem :-) ale encyklopedie nejsem. Stále zjišťuji, že něco nevím. Nadavno jsem zjistil že formát čísla může způsobit jeho přeformátování že vypadá jako vydělené (konkrétně milionem). Je to sice jen opticky podobně jako když se vloží oddělovač tisíců mezerou a mně to nedošlo. Ale přišel jsem na to proč jsem tohle vytěsnil - nevěděl jsem že se po takové "čárce" současně zalomí zobrazení na 1 (nebo lze nastavit více) desetinných míst.


     Dokonce jsem se jednou pokusil psát sem pro naši redakci, ale dost brzo jsem zjistil, že se dá naběhnout si na komerční sféru. Stačilo napsat maličkost - že není potřebné si platit školitele. Ten hajzl jehož kšeftu se to dotklo napadl redakci a já jsem proto s tématem skončil a doporučil redakci raději problematickou pasáž smazat.
     To sice nebyl důvod proč jsem toho nechal, ale značně to přispělo k tomu, že mi psaní na termíny začalo docela vadit. Přes to osobně v této začaté práci stále pokračuju. Je to programování šablon pro účely sdílení dokumentů v rámci organizací a institucí. To má hlubší souvislosti s tím co dělám celý život. Ale místo abych dělal co bych chtěl tak programuju.
     Na fórum chodím spíš pro to, že mne to baví - změna tématu a krátké zamšlení z jiného soudku. Ale také se mi stane že čas od času něco slíbím a zapomenu. Stačí aby bylo současně více dotazů a uživatelé byli online - někdy se to tak vyvede a já na to zapomenu. Už mám také asi nárok narodil jsem se ve stejném roce jako Rock&Roll.


     Takže jsem uvažoval o tom, že udělám něco k nahrávaným makrům a některé tipy + triky jak co vzorcem udělat. Ale převažuje u mne rozhodování podle toho co nemám a je toho hodně od peněz přes zdraví až po čas..


ještě jednou díky :-)

Editoval neutr (5. 3. 2016 20:26:51)


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

#5 7. 3. 2016 17:48:09

poky
Člen
Registrace: 23. 9. 2005
Příspěvků: 69

Re: LO Calc-hlídání expirace

To já bych ti chtěl poděkovat za tvoji práci.
Není moc lidí, kteří umí jít "s kůží na trh".
Hezký den.

Offline

#6 8. 3. 2016 12:06:07

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

Re: LO Calc-hlídání expirace

Globus napsal(a)

Zdar, mám problém a hned popisuji. Skladové hospodářství a v něm hlídání expirace zboží. Potřebuji pole v němž bude datum nákupu nebo fasování a při konci doby použitelnosti se bude měnit barva pole, ale datum fasování nebo výroby musí zůstat nezměněný. Mám pole s datem nákupu nebo výdeje a přes podmíněné formátování se mi barva pole mění. Například vydám ze skladu pracovní boty a do pole zapíšu datum výdeje 3.3.2016. Ke konci životnosti, nebo expirace se mi musí měnit barva pole s datumem a to takhle: 22 měsíců zelená, 23 měsíc žlutá, 24 měsíc červená a to vše s datem výdeje tedy 3.3 2016.


Pokud je datum v A1, použijte podmíněný formát s podmínkami:
1. podmínka (vzorec):

DATEDIF(A1;TODAY();"m")>=23

   -- styl s červeným pozadím
2. podmínka (vzorec):

DATEDIF(A1;TODAY();"m")>=22

   -- styl se žlutým pozadím

Základní pozadí je zelené (nevybarvoval bych to)

Zkuste příště dotaz umístit lépe.

Offline

Zápatí