На этот вопрос уже есть ответ здесь:
У меня есть два столбца в Microsoft Excel: F - столбец с датой окончания обслуживания; E - столбец с датой начала обслуживания.
Как рассчитать и сообщить количество месяцев, отработанных для каждого человека?
На этот вопрос уже есть ответ здесь:
У меня есть два столбца в Microsoft Excel: F - столбец с датой окончания обслуживания; E - столбец с датой начала обслуживания.
Как рассчитать и сообщить количество месяцев, отработанных для каждого человека?
Ответы:
Функция DATEDIF явно дает вам количество месяцев между двумя датами - она округляется
=DATEDIF(A2,B2,"m")
где A2 - более ранняя из двух дат
Если вы хотите округлить до «ближайшего» целого месяца, вы можете использовать эту версию
=DATEDIF(A2,B2+15,"m")
Если вам не важен день, и любая дата с января по любую дату марта составляет 3 месяца, тогда вы можете использовать эту версию
=DATEDIF(A2-DAY(A2)+1,B2,"m")+1
=(B2 - A1)/(365/12)
если вам нужен не округленный ответ, считается, что месяц в среднем длится 365/12 дней
Эта статья посвящена КБ от Microsoft. Вот
Он предоставляет два решения, в зависимости от того, хотите ли вы округлить месяцы вниз или вверх.
Округлять:
=(YEAR(LDate)-YEAR(EDate))*12+MONTH(LDate)-MONTH(EDate)
Округлить вниз:
=IF(DAY(LDate)>=DAY(EDate),0,-1)+(YEAR(LDate)-YEAR(EDate))*12+MONTH(LDate)-MONTH(EDate)
В обоих случаях EDate - это ячейка, содержащая более раннюю дату, а LDate - это ячейка, содержащая более позднюю дату.