У Microsoft есть статья в КБ на эту тему. Формула, которую они предлагают для Dertemine, если год является високосным:
=IF(OR(MOD(A1,400)=0,AND(MOD(A1,4)=0,MOD(A1,100)<>0)),"Leap Year", "NOT a Leap Year")
В качестве дополнительного примечания: система дат в Microsoft Excel намеренно содержит ошибку, считая 1900 год високосным. Посмотрите этот SE Q & A для превосходного ответа об этом.
Если я применяю это к вашему вопросу, то, что вы на самом деле делаете, - это ставите первый марш в следующем году. Итак, нам нужно две корректировки в приведенной выше формуле:
- Ваши данные содержат дату, а не только год, поэтому
A1
становится YEAR(A1)
.
- Мы добавляем 306 дней к A1. По этому мы считаем первый марш (и вперед) на следующий год.
Полученная формула:
=IF(OR(MOD(YEAR(A1+306);400)=0;AND(MOD(YEAR(A1+306);4)=0;MOD(YEAR(A1+306);100)<>0));"Financial Year has a Leap Day"; "Financial Year has NO Leap Day")
Эта формула сообщает (дата в ДД / ММ / ГГГГ):
01/01/2014 --> Financial Year has NO Leap Day
01/01/2016 --> Financial Year has a Leap Day
29/02/2016 --> Financial Year has a Leap Day
01/03/2016 --> Financial Year has NO Leap Day