Formuła programu Excel: rok jest rokiem przestępnym -

Formuła ogólna

=MONTH(DATE(YEAR(date),2,29))=2

Podsumowanie

Aby sprawdzić, czy rok określonej daty jest rokiem przestępnym, możesz użyć formuły korzystającej z funkcji MIESIĄC, ROK i DATA. W przedstawionym przykładzie formuła w komórce C5 to:

=MONTH(DATE(YEAR(B5),2,29))=2

Wyjaśnienie

Rdzeniem tej formuły jest funkcja DATA, która automatycznie dostosowuje się do wartości miesiąca i roku spoza zakresu. We wzorze rok przechodzi w datę bez zmian, wraz z 2 miesiącem (luty) i 29 dniem. W latach przestępnych luty ma 29 dni, więc funkcja DATA zwróci po prostu datę 29 lutego danego roku.

Jednak w latach innych niż przestępne DATE zwróci datę 1 marca roku, ponieważ w lutym nie ma 29 dnia, a DATA po prostu przesuwa datę do przodu na następny miesiąc.

Na koniec funkcja MIESIĄC po prostu wyodrębnia miesiąc z wyniku podanego przez DATĘ, który jest porównywany z 2 przy użyciu znaku równości. Jeśli miesiąc to 2, formuła zwraca wartość PRAWDA. Jeśli nie, miesiąc musi wynosić 3, a formuła zwraca FALSE.

Tylko rok testowy

Aby sprawdzić tylko rok, zamiast pełnej daty, zamiast daty, zmodyfikuj wzór w następujący sposób:

=MONTH(DATE(year,2,29))=2

W tej wersji nie wyodrębniamy wartości roku z daty, przekazujemy wartość roku (tj. 2020) bezpośrednio do funkcji DATE.

Bardziej dosłowne rozwiązanie

Jeśli powyższy wzór wydaje się zbyt sprytny i chcesz bardziej dosłownego rozwiązania, poniższy wzór sprawdzi, czy rok zawiera 366 dni:

=DATE(YEAR(date)+1,1,1)-DATE(YEAR(date),1,1)=366

Ta formuła generuje dwie daty na podstawie podanej daty: (1) pierwszy w następnym roku i (2) pierwszy w bieżącym roku. Następnie pierwszy rok bieżącego jest odejmowany od pierwszego roku następnego. W latach innych niż przestępne wynikiem jest 365, a formuła zwraca FALSE. W latach przestępnych wynikiem jest 366, a formuła zwraca wartość PRAWDA.

Dobre linki

Excel Bible (John Walkenbach) Wiele sposobów na sprawdzenie roku przestępnego (Chandoo)

Interesujące artykuły...