Как рассчитать количество месяцев между двумя датами в Excel? [Дубликат]

8

У меня есть два столбца в Microsoft Excel: F - столбец с датой окончания обслуживания; E - столбец с датой начала обслуживания.

Как рассчитать и сообщить количество месяцев, отработанных для каждого человека?

Terrance Drake
источник
Пожалуйста, сообщите нам желаемый результат с (например) 14.3.2014 - 12.7.2014: (a) 4 месяца (4-й не завершен) или (b) 5 месяцев (считая каждый затронутый месяц) или (c) 3 месяца (только полный месяц) или (d) 3,9 месяца.
guntbert
1
Ответ здесь лучше, чем «оригинал», связанный в этом вопросе
Jayan

Ответы:

16

Функция DATEDIF явно дает вам количество месяцев между двумя датами - она ​​округляется

=DATEDIF(A2,B2,"m")

где A2 - более ранняя из двух дат

Если вы хотите округлить до «ближайшего» целого месяца, вы можете использовать эту версию

=DATEDIF(A2,B2+15,"m")

Если вам не важен день, и любая дата с января по любую дату марта составляет 3 месяца, тогда вы можете использовать эту версию

=DATEDIF(A2-DAY(A2)+1,B2,"m")+1

barry houdini
источник
Работает и на Google Sheets.
Adriano P
Ты можешь использовать =(B2 - A1)/(365/12) если вам нужен не округленный ответ, считается, что месяц в среднем длится 365/12 дней
aljgom
3

Эта статья посвящена КБ от 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 - это ячейка, содержащая более позднюю дату.

kenkh
источник