Strona 2 z 2

: ndz 14 cze 2020, 15:23
autor: Bea
a ja mam problem..
niby excel liczy bez problemu rok 1900, tak ?
to jakim dniem tygodnia wg waszych exceli (może będzie różnie) jest Nowy Rok: 1 stycznia 1900.


mnie wychodzi, że niedziela
a faktycznie był poniedziałek...

mówię oczywiście o kalendarzu gregoriańskim,
(w juliańskim 1 stycznia był w sobotę)
Może ten mój excel źle liczy ?

: ndz 14 cze 2020, 16:19
autor: Gocha_D
Jak to liczysz?

Mój excel (2003) funkcją dzień.tyg(kolejna_liczba, zwracany_typ) zwraca w zależności od typu liczbę, którą zamieniam funkcją wyszukaj.pionowo() na dzień tygodnia słownie.
Zwracany typ to:
1 - niedziela 1 ... sobota 7
2 - poniedziałek 1 ... niedziela 7
3 - poniedziałek 0 ... niedziela 6

Spróbuj w funkcji dzień.tyg(liczba, 2), dopisać 2 (to pogrubione) i wszystko powinno się zgadzać.

Pozdrawiam
Gocha_D

: ndz 14 cze 2020, 16:35
autor: Bea
no właśnie dokładnie tak liczę, bo mi wygodniej jak pn=1 a niedziela =7

tylko ze mi data 1900-01-01 wychodzi, że jest to 7 czyli niedziela
o dziwo data 1900-12-31 jest ok

ale chyba już doszlam o co chodzi.... przyjęli, że 1900 był przestępny
wpiszcie 1900-02-29 - napisze że to środa
a tymczasem rok 1900 nie był przestępny


zgodzicie się ze mną ?

: ndz 14 cze 2020, 17:09
autor: Krzysztof_Wasyluk
Czyli obce im jest rozróżnienie na kalendarz gregoriański i juliański. Nie znają także miliardów, biliardów itd. i dobrze, że nie próbują w excelu przedstawiać dużych liczb słownie. :)

: ndz 14 cze 2020, 17:11
autor: Sroczyński_Włodzimierz
tak, zgodzimy
błąd w 1900 jest opisany, do wyszukania

: ndz 14 cze 2020, 17:15
autor: Gocha_D
Masz rację, rok 1900 nie był przestępny, coś pokręcili.

O ile dobrze zrozumiałam, masz problem ze słownym zapisem dnia tygodnia sprzed 29-02-1900 r. Napisałam dla Ciebie formułę, może Ci się przyda.

=WYSZUKAJ.PIONOWO(JEŻELI(A2<=$K$1,DZIEŃ.TYG(A2),DZIEŃ.TYG(A2,2)),$I$1:$J$7,2)

$K$1- komórka z datą 29-02-1900
$I$1:$J$7 tablica z nazwami dni tygodnia

Pozdrawiam
Gocha_D

: ndz 14 cze 2020, 17:33
autor: kkrzastek
geneawdziek pisze:Miałem linki, które teraz nie działają. Ale coś tutaj znalazłem: https://www.radicalexcel.com/lecture.html (26F i 26G).

Ryszard
Dziękuję serdecznie! Właśnie tego potrzebowałem.

Krzysztof

: ndz 14 cze 2020, 18:22
autor: Bea
sprawdźcie proszę czy to działa ?
i czy dobrze działa ? (tj. czy podaje dobrą nazwę dnia tygodnia)
https://docs.google.com/spreadsheets/d/ ... sp=sharing
niestety nie specjalnie korzystałam z arkuszy googla i nie do końca umiem się tym posługiwać

komórki edytowalne, to tylko te: rok / miesiąc / dzień

ciekawe co będzie jak kilka osób na raz zacznie zmieniać ???

PS
no już wiem co będzie
zawiesi się
i dzień tygodnia będzie liczyć bardzo długo

: ndz 14 cze 2020, 21:10
autor: Gocha_D
Przetestowałaś formułę, którą napisałam (dwa posty wyżej) - wynik natychmiastowy.

Pozdrawiam
Gocha_D

: pn 15 cze 2020, 20:20
autor: Bea
Gocha_D pisze:Przetestowałaś formułę, którą napisałam (dwa posty wyżej) - wynik natychmiastowy.

Pozdrawiam
Gocha_D
Gosiu kompletnie mnie nie zrozumiałaś. Zrobiłam arkusz excel określający dzień tygodnia dla dat sprzed 1900. Bo po 1900 jest normalna funkcja. I pisząc formuły coś mi się nie chciało zgodzić - właśnie wtedy odkryłam, że jest pomyłka w roczniku 1900 w excelu, a od tego się odnosiłam.
Ale skoro - pomyłka jest udokumentowana, to wszystko gra.
Chyba.
Bo jak dotąd nikt nie skomentował, czy - np. dla jakiś wybiórczych dat - mu się zgadza. Bo może gdzieś się pomyliłam. Zdarza się.
Niestety coś jest nie tak z dokumentem googla - strasznie wolno pracuje. Np. konstytucja 3Maja - wskoczyła mi na początku sobota. Już się zdenerwowałam, że coś jest źle - ale w końcu pokazało wtorek.

Na razie mnie się zgodziło z tym https://www.infor.pl/kalkulatory/wieczn ... .html#form Ale gdybyście mieli jakieś potwierdzenia dokumentów genealogicznych do sprawdzenia poprawności, to byłoby super.

: wt 16 cze 2020, 08:39
autor: pebro
A może zamiast Excela zainstalować darmowy OpenOffice lub LibreOffice. Tam funkcja liczenia dnia tygodnia działa prawidłowo, również dla dat przed 1800 rokiem. I daty można wpisywać bez kombinacji typu: 1.1.1800
Przykład (1=poniedziałek):
1.01.1900 1
31.12.1899 7
1.01.1800 3
1.01.1700 5

: wt 16 cze 2020, 13:54
autor: Gocha_D
Źle Cię zrozumiałam, bo napisałaś, że korzystasz z formuły dzień.tyg(), a ona nie działa przed 1900 rokiem. Do testów też podawałaś daty z XX wieku:-)

Jaki zakres dat Cię interesuje? Pomyślę o funkcji działającej w excelu.
Pozdrawiam,
Gocha_D.

: wt 16 cze 2020, 17:41
autor: kkrzastek
Gocha_D pisze:Źle Cię zrozumiałam, bo napisałaś, że korzystasz z formuły dzień.tyg(), a ona nie działa przed 1900 rokiem. Do testów też podawałaś daty z XX wieku:-)

Jaki zakres dat Cię interesuje? Pomyślę o funkcji działającej w excelu.
Pozdrawiam,
Gocha_D.
Nie ma potrzeby pisać na nowo. Wcześniej już został podany link do gotowego arkusza, który to liczy.

Miałem linki, które teraz nie działają. Ale coś tutaj znalazłem: https://www.radicalexcel.com/lecture.html (26F i 26G).

Ryszard
Sprawdziłem i jest to bardzo wygodny sposób. Konieczna jest włączona obsługa makr.

: wt 16 cze 2020, 17:54
autor: Bea
Gosiu już nie potrzeba, zadanie jest już wykonane. W linku jest https://docs.google.com/spreadsheets/d/ ... sp=sharing jest rozwiązanie.

Kombinacji nie jest dużo. Albo rok jest przestępny - albo nie. Albo nowy rok jest w poniedziałek, albo we wtorek itd.
Raptem 14 możliwości.

Jeżeli Nowy Rok 1896 był w środę i był to rok przestępny, to układ dni tygodnia jest dokładnie taki sam jak w 2020 - który też jest przestępny i też 1 stycznia wypadał w środę.
Czyli skoro 16 czerwca 2020 to wtorek, to 16 czerwca 1896 to też wtorek.

Wystarczy określić funkcją, które lata są przestępne, a które nie (to akurat proste) i jaki mają pierwszy dzień w roku (to też nie trudne jak się ma do dyspozycji excela).

A pełne rozwiązanie - w linku do arkusza powyżej.


P.S.
ja nie lubię makr
Kiedyś korzystałam, natrudziłam się... a następnie okazało się że nowa wersja excela nie obsługuje tego makra. To mnie skutecznie zniechęciło do mark.

: wt 16 cze 2020, 18:52
autor: Gocha_D
Myślałam o funkcji, która będzie działała tak, jak standardowe formuły exela. W jednej kolumnie daty, a w kolejnej funkcja użytkownika, skopiowana w całym zakresie. Zmieniasz datę, zmienia się wynik.

Cieszę się, że sobie poradziłaś.

Pozdrawiam
Gocha_D