-2

Наш финансовый год длится с первого марта до последнего дня февраля. Мне нужна формула в Excel, которая говорит мне, есть ли у финансового года високосный день (29 февраля) или нет.

Например, 01.03.2015 приходится на финансовый год 2015/2016 и заканчивается 29.02.2016, поэтому у него есть високосный день. Однако 01/01/2016 приходится на финансовый год 2016/2017, который не содержит високосного дня.

Я хочу иметь возможность ввести любую дату и определить, содержит ли финансовый год, в который она попадает, високосный день.

1 ответ1

2

У 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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .