Я считаю, что 7 дней — это неделя, поэтому если я посмотрю на 1 января 2019 года — 7 января 2019 года, я бы сказал, что это 7 дней. Но часто я видел, как люди, вычисляя количество дней между двумя датами или возрастом, используют формулу, B1-A1
где A1
— это начальная дата/ДР, а B1
— конечная дата или сегодняшняя дата. Это даст 6 для приведенного выше примера.
Я использую (B1-A1)+1
, что дает 7, а для дат рождения я бы использовал ((B1-A1)+1)/365.25
. Что правильно?
решение1
Вопрос не в том, что одна формула верна, а другая нет. Вопрос в том, что вы ищете.
Допустим, вы работаете над задачей 24 часа в сутки. Вы начинаете задачу 17 января 2000 года в 9:00 утра и завершаете ее 18 января 2000 года в 9:00 утра. Если вопросСколько дней заняло выполнение задачи?Вы бы взяли разницу; получили бы 24 часа и ответили1день.
Если же вопрос в том,Сколько дней вы работали над заданием?Вы бы немедленно отреагировали2
Таким образом =B1 - A1
, или =B1 - A1 + 1
может быть уместным в зависимости отчто вы пытаетесь измерить.
решение2
Ответ вращается вокруг того, как Excel обрабатывает даты. Когда дни между датами вычисляются с помощью формул, таких как B1-A1
, Excel преобразует даты в серийные номера и использует серийные номера для вычисления количества дней между ними.
По умолчанию 1 января 1900 года имеет серийный номер 1, а 1 января 2008 года имеет серийный номер 39448, поскольку это 39 447 дней после 1 января 1900 года. (Источник:Майкрософт)
Таким образом, количество дней между 1 января 1900 года и 7 января 1900 года будет равно 7 минус 1, что равно 6.
То же самое относится к периоду с 1/1/2008 по 7/1/2008.
1 января 2008 года — 39 447, а
7 января 2008 года — 39 453.
39,453 — 39,447 = 6
Если хочешь считать днивключительновам нужно будет прибавить 1, чтобы формула стала такой, например B1-A1+1
.
Если вы хотите рассчитать дниэксклюзивныйвам нужно будет вычесть 1 день, делаяB1-A1-1
решение3
Я хотел бы предложить 3 различные формулы для расчета ВОЗРАСТА между двумя датами.
- Чтобы получить только годы:
=INT((B1-A1)/365)
Или,
=ROUNDDOWN(YEARFRAC(A1, B1, 1), 0)
Или вы TODAY()
также можете использовать функцию:
=ROUNDDOWN(YEARFRAC(A1, TODAY(), 1), 0)
Чтобы узнать полный возраст в годах, месяцах и днях, используйте этот метод.
=DATEDIF(A1,B1,"Y") & " Years, " & DATEDIF(A1,B1,"YM") & " Months, " & DATEDIF(A1,B1,"MD") & " Days"
Отредактировано:
Подсчет количества дней между двумя датами немного произволен. В основном зависит от необходимости.
- Подсчитайте количество дней,Без даты начала.
- Подсчитайте количество дней,Включая дату начала.
- Подсчитайте количество дней,Исключая дату начала и дату окончания.
Учитывая даты выборки ОП, можно использовать следующую формулу.
Формула для ситуации 1:
=DATEDIF(B2,B3,"d")
=DAYS(B3,B2)
=INT(B3-B2)
Формула для ситуации 2:
=DATEDIF(B2,B3,"d")+1
=DAYS(B3,B2)+1
=INT(B3-B2+1)
Формула для ситуации 3:
=DATEDIF(B2,B3,"d")-1
=DAYS(B3,B2)-1
=INT(B3-B2-1)
При необходимости измените ссылки на ячейки в формуле.