Problém může být způsoben tím, že týdny v roce se na začátku roku restartují. Pak záleží jestli se konec roku strefí do víkendu.
Například letos končí týden v sobotu. Neděle ještě patří teoreticky do téhož týdne, ale je to první týden roku 2017.
Správně bez potíží chodí poslední vzorec z mého příspěvku #3. Ten nepočítá s ničím jiným nežli číslem datumu je to tento :
=IF(OR(MOD(A1;7)=1;MOD(A1;7)=0)=1;"";IF(MOD(INT((A1+5)/7);2)=1;"R";"O"))
Uvedený vzorec z #7 chodí správně také, ale vím že s tím bývají někdy problémy v nastavení. Tohle neodhadl uživatel DERKA. On sice má kratší zápis jinak stejného vzorce, ale parametr pro start dnu v týdnu uvedl nesprávně ačkoliv na to mohl přijít až právě při přestupu let. Chyba je zde :
=IF(WEEKDAY(A3;2)<6;IF(MOD(WEEKNUM(A3;2);2)=0;"R";"O");"---")
Start dne v týdnu je od dvojky. Já jsem uvedl od jedničky. Dvojka je poplatná tuším pro USA a možná Britské území nebo i kolonie. To je ale zkušenost. Už jsem na podobné "špeky" narazil, ale proto vím že je nejlepší se spolehnout na holé číslo (tedy datum) a ne na nějak předžvýkané funkce.
Ne snad že bych datumovým funkcím nevěřil, ale čas od času se změní například nějaká norma či kód a původně správné výsledky se změní. Zde záleží například na národním nastavení. Takže když bude implicitní řeč nastavena na US bude chtít funkce WEEKNUM dvojku a chybně bude jednička.
To znamená, že uživatel DERKA pokud má nastavenu angličtinu jako základní jazyk nemusel na tuto chybu vůbec narazit. Jemu to v takovém případě bude bude asi chodit dobře i při přechodu let. Ještě pro jistotu uvádím správný tvar LADERova vzorce :
=IF(WEEKDAY(A1;2)<6;IF(MOD(WEEKNUM(A1;1);2)=1;"R";"O");"---")
Editoval neutr (7. 12. 2016 06:35:13)
Moje e-mailová adresa
Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte orientaci při vyhledávání řešení JAK OZNAČIT TÉMA ZA VYŘEŠENÉ