Нужна формула для високосного года

Нужна формула для високосного года

Мне нужна формула, в которой, если дата больше или равна 01.03.2015 и меньше или равна 29.02.2016, то я получаю результат «Високосный год» или «Невисокосный год».

Спасибо! Сумит

решение1

Другой способ заключается в том, что функция даты в Excel увеличит месяц, если день выходит за пределы диапазона, поэтому =date(2015,1,32)(32 января) вернет 1 февраля 2015 года.

Таким образом, если у вас есть год в ячейке A1, эта формула вернет, високосный это год или нет.

=IF(DATE(A1,2,29)=DATE(A1,3,1),"No Leap Year","Leap Year")

Если год не високосный, программа округляет 29 февраля до 1 марта и получается одинаковое число (високосный год не является високосным).

Редактировать на основе вашего комментария: Если ваша дата в A1 и вы хотите узнать, будет ли 29 февраля в следующем году

=if((date(year(A1)+1,month(A1),day(A1))-A1)=366,"Leap Year","No Leap Year")

Увеличьте год на 1, вычтите исходное значение и проверьте, есть ли 366 дней.

решение2

Некоторые люди используют:

ЕСЛИ( дата(год(A1), 2, 29) <> дата(год(A1), 3, 1) ,"Скачок", "Без скачка")

Но мне не нравится использовать недействительные даты в моей формуле, поэтому я использую эту:

ЕСЛИ( месяц( дата(год(A1), 2, 28)+1 )=2 ,"Скачок", "Без скачка")

Или вы можете посчитать количество дней в году (или в феврале) следующим образом:

ЕСЛИ( дата(год(A1) + 1, 1, 1) - дата(год(A1), 1, 1) = 366 ,"Скачок", "Без скачка")

решение3

Вот способ рассчитать количество дней между двумя датами: https://support.office.com/en-ca/article/Рассчитать-разницу-между-двумя-датами-8235e7c9-b430-44ca-9425-46100a162f38

Посчитайте между 1 января и 31 декабря. Если получится 366, то это високосный год.

надеюсь, это поможет

решение4

Високосные годы случаются каждые 4 года, на четвертый год.

Поэтому самое простое решение:

=IF(MOD(YEAR(A1),4)=0,"Leap Year","No Leap Year")

Определите год, разделите его на четыре ( MODфункция), и если остаток равен нулю, то это високосный год.

РЕДАКТИРОВАТЬ:

Извините, для вашей конкретной проблемы я вижу, что вам нужно вернуть выбранное вами значение в течение первых двух месяцев високосного года или в течение последних десяти месяцев года перед високосным годом... Поэтому вам нужна будет следующая формула:

=IF(MONTH(A1)<3,
  IF(MOD(YEAR(A1),4)=0,"Leap Year","No Leap Year"),
  IF(MOD(YEAR(A1),4)=3,"Leap Year","No Leap Year"))

Связанный контент