Google Spreadsheets/Excel - funkce pocet dnu v danem mesici

Programy pro práci s textem, tabulkami, prezentacemi

Moderátor: Moderátoři Živě.cz

Odeslat příspěvekod Stan-Stan 21. 7. 2020 11:06

Zdravim,
potrebuji zjistit pocet dnu z rozsahu datumu pro jednotlive mesice.
Existuje na to nejaka funkce, nebo je reseni slozite?

Detailnejsi popis:
v bunce A1 je pocatecni datum (napr. 11.11.2015)
v bunce B1 je konecne datum (napr. 12.02.2016)

v bunce C1 potrebuji spocitat pocet dnu z rozsahu A1-B1 v listopadu
v bunce D1 potrebuji spocitat pocet dnu z rozsahu A1-B1 v prosinci
v bunce E1 potrebuji spocitat pocet dnu z rozsahu A1-B1 v lednu
v bunce F1 potrebuji spocitat pocet dnu z rozsahu A1-B1 v unoru

Diky za radu.
Stan-Stan
Kolemjdoucí

Odeslat příspěvekod Emil Pastelka 21. 7. 2020 12:25

Nejblíže je tomu funkce DATEDIF
Emil Pastelka
Junior
Uživatelský avatar

Odeslat příspěvekod Stan-Stan 21. 7. 2020 12:41

Diky, ale funkce DATEDIF vypocita pouze CELKOVY pocet dnu/mesicu/let mezi pocatecnim a konecnym datem.
Bohuzel v ni neni parametr pro ziskani poctu dnu za JEDNOTLIVE mesice.

Takze toto neni reseni.
Stan-Stan
Kolemjdoucí

Odeslat příspěvekod Emil Pastelka 21. 7. 2020 17:49

DATEDIF(A1; B1; "D"), kdy "D" je počet dnů mezi argumenty počáteční_datum a koncové_datum.

listopad pak budete definovat pomocí funkce EOMONTH případně MONTH
Emil Pastelka
Junior
Uživatelský avatar

Odeslat příspěvekod Stan-Stan 21. 7. 2020 18:29

Omlouvam se, ale stale nechapu.

Pocet dnu mezi dvema daty vypocita funkce:
=DATEDIF(A1; B1; "D")

stejne jako funkce:
=DAYS(B1; A1)

stejne jako prosty vypocet:
=(B1-A1)


Ale jak tyto pocty dnu "rozparceluji" do jednotlivych mesicu?
Stan-Stan
Kolemjdoucí

Odeslat příspěvekod Emil Pastelka 22. 7. 2020 01:35

Narazil jsem na funkci viz níže, kdy A2 je start a B2 je konec (A1 je záhlaví s textem...). C2 je pak vzorec pro leden kdy za X ve vzorci dosadíte 1, v únoru D2 dosadíte 2 atd...
Nevýhoda je, že u rozsahů dat, kde jdete přes jeden rok a kde je například leden dvakrát, bude v poli jednoho měsíce součet všech dnů pro všechny ledny v daném rozsahu.

Kód: Vybrat vše
=SUMPRODUCT((MONTH(A2+ROW($A$1:$A$10000)-1)=X)*((A2+ROW($A$1:$A$10000)-1)<=B2))
Emil Pastelka
Junior
Uživatelský avatar

Odeslat příspěvekod Stan-Stan 22. 7. 2020 18:42

Je to sice nad moje chapani, absolutne tomu vzorci nerozumim, ale FUNGUJE TO! :)
Zcela 100% to resi moje zadani.

Uvadim ekvivalenty funkci pro cesky Excel:
SUMPRODUCT = SOUČIN.SKALÁRNÍ
MONTH = MĚSÍC
ROW = ŘÁDEK

Jeste uvedu praktickou aplikaci tohoto reseni:
Slo o casove rozliseni obsazenosti pokoju v hotelovem businessu, kde A2 je check-in, B2 je check-out a v bunkach C2 az N2 jsou pocty obsazenych dnu po mesicich (leden-prosinec).
Dat ke zpracovani jsou tisice radku, takze mi tato funkce velmi pomuze, abych to nemusel rozdelovat manualne. Pobyty nejsou delsi nez jeden rok, takze zminena nevyhoda se tohoto pripadu netyka.

Diky moc!
Stan-Stan
Kolemjdoucí


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků