Autor Zpráva
Koubes
Profil *
Jak vyřešit v docházce počítání hodin noční co nejjednodušeji?
E1:Ex jsou příchody a F1:Fx odchody
počítám s tím, že se bude každý den dělat zvlášť

například s počítaním pestávek jsem se popral takto
=PRAVDA;""; KDYŽ(F3<E3;  KDYŽ(24-E3+F3>=6;KDYŽ(24-E3+F3>=11; 1; 0,5);"" ); KDYŽ(F3-E3>=6;KDYŽ(F3-E3>=11; 1; 0,5);"" )) )


Díky za radu
xmark
Profil
Nepopisuješ co od toho chceš, ani co to dělá, ani jestli to počítá správně. Co čekáš za radu?

// Nicméně přece jen něco: nepoužíval bych pro toto vzorce v buňkách, počítal bych makrem.
Koubes
Profil *
xmark:
[#2] xmark
Neumím makra, jsem lopata. Vycházím ze zákoníku práce. Noční je 22-6h. V jednom sloupci jsou příchody a v druhém odchody, zajímá mě jak spočítat kolik hodin je noční.
př: příchod A1 20h
odchod B1 6h
xmark
Profil
když ( B < A; B-A+24; B-A )

edit: teď se dívám, že jsem to možná špatně pochopil. Jestli je "noční" vymezena nějakým intervalem a ty chceš zjistit, kolik hodin z udané přítomnosti noční tvoří, muselo by se na to jinak.
_es
Profil
xmark:
počítal bych makrem
To nedoporučujem, makrá sú mnohonásobne pomalšie a hrozí viac komplikácií ako pri vzorcoch.
Koubes
Profil *
Nevím jestli můžu napsat, že to mi nepomůže, je to obdoba toho mého příkladu.
Já měl namysli, že pokud půjde zaměstnanec do práce od 20h do 6h, noční je 22-6, jak zjistit kolik hodin je noční? Také může prijít 23-5......
xmark
Profil
_es:
To nedoporučujem, makrá sú mnohonásobne pomalšie

Tak to bych se skoro hádal, že je to naopak. A komplikace .. nevím v čem. Naopak když tam bude chyba, dá se to trasovat a ladit.
Koubes
Profil *
Kdybych uměl VB tak se neptám, v PHP jsem to kdysi řešil, tam to nebyl problém a hlavně to byl nějaký skript, tam stačilo jen umět pracovat s datumovymi funkcemi. Teď se mi to v XLS nafukuje a stává nepřehledné
_es
Profil
xmark:
Tak to bych se skoro hádal, že je to naopak.
Určite nie. Môžeš si to vyskúšať na nejakej rozsiahlejšej tabuľke a porovnať oba spôsoby.

A komplikace .. nevím v čem
Napríklad v tom, že budú makrá zakázané - vcelku bežný jav.
Koubes
Profil *
[#9] _es
a máme tu dva kocoury
Alphard
Profil
Koubes:
OpenOffice Calc má funkce max() a min(), Excel by je mohl mít také.
max(22:00; doba příchodu), min(6:00, doba odchodu). Interval mezi tím je vaše doba, nebo to chápu chybně?

Doplňuji, že příchod v 1:00 apod. by se samozřejmě musel ošetřit.
Koubes
Profil *
teoreticky by to mělo být ono, vyzkouším zítra, dík
xmark
Profil
Alphard:
A co když příchod bude v 0:15?

_es:
Jen bych to chtěl uzavřít. Tohle je pro mě trochu tenký led, už jsem excel neviděl pár let, tak to vzdávám.

Napríklad v tom, že budú makrá zakázané
A naopak když otevřeš soubor s funkcí KDYŽ v jiné než české verzi excelu, tak to pochopitelně nefunguje.
_es
Profil
xmark:
A naopak když otevřeš soubor s funkcí KDYŽ v jiné než české verzi excelu, tak to pochopitelně nefunguje.
„Pochopiteľne“ to funguje aj v inej jazykovej verzii, len sa vo vzorcoch zobrazí iný názov funkcie.
petr 6
Profil
xmark:
A co když příchod bude v 0:15?
Stačí to zapsat jako 24:15 (to by excel snad měl zvládat, open office to umí tak, že zobrazí 0:15, ale počítá s tím jako s 24:15)
xmark
Profil
_es:
‚Pochopiteľne‘ to funguje aj v inej jazykovej verzii, len sa vo vzorcoch zobrazí iný názov funkcie.

To nebývalo. ok, končím OT.
Alphard
Profil
xmark:
A co když příchod bude v 0:15?
Doplnil jsem svůj příspěvek [#11] dřív, než jsi se ozval.
O možnosti [#15] jsem ani nevěděl, ale zdá se, že funguje i v Calcu. Zbývá nějak rozumně ošetřit odchod před půlnocí. -0:20 sice funguje, ale těžko po někom chtít, aby to zadával takhle :-) Netvrdím, že min a max poskytuje nejlepší možné řešení.

Možná se bude muset předem zjišťovat, jestli vůbec tam je nějaká noční směna, Koubes se nevyjádřil moc konkrétně.
Koubes
Profil *
[#17] Alphard
Situace může nastat jakákoliv. Pracovní doba může klidně být 20-23, třšba se udělá zaměstnanci špatně, nebo může "zaspat" a přijít 23:50-6......, někdo může dělat přesčas 15-23.30.
hodiny nezapisuji jako čas, ale čísla, takže 30min=0,5 a příchody a odchody se zaokrouhlují na 0,5 nebo celé hodiny. pokud někdo odejde 15:25 je jasné, že pracoval do 15h.
Jde jen o to, jak kontrolovat jak dlouho tu byl mezi 22-6.
Myslím, že jednodušeji už to napsat nelze.
PepaSutr
Profil
Koubes:
Koubes:
Koubes:
Zkus =MOD(F3-E3;1) a nastav si formát na čas (22:00)

Vaše odpověď

Mohlo by se hodit

Zvažte, zda se neobrátit na specializované fórum, toto se zabývá především webovou problematikou.

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0