Как складывать и вычитать даты, дни, недели, месяцы и годы в Excel

В этом уроке Вы познакомитесь с различными полезными формулами сложения и вычитания дат в Excel. Например, Вы узнаете, как вычесть из одной даты другую, как прибавить к дате несколько дней, месяцев или лет, и т.д.

Если Вы уже проходили уроки по работе с датами в Excel (наши или любые другие уроки), то должны знать формулы для вычисления единиц времени, таких как дни, недели, месяцы, года.

Анализируя даты в каких-либо данных, часто нужно выполнять над этими датами арифметические действия. Эта статья объяснит некоторые формулы сложения и вычитания дат, которые могут оказаться для Вас полезными.

Как вычитать даты в Excel

Предположим, что у Вас в ячейках A2 и B2 содержатся даты, и нужно вычесть одну дату из другой, чтобы узнать, сколько между ними дней. Как часто бывает в Excel, этот результат можно получить несколькими способами.

Пример 1. Непосредственно вычитаем одну дату из другой

Думаю, Вы знаете, что Excel хранит даты в виде целых чисел, начиная с 1, что соответствует 1 января 1900 г. Поэтому Вы можете просто арифметически вычесть одно число из другого:

=B2-A2

Пример 2. Вычитание дат с помощью функции РАЗНДАТ

Если предыдущая формула кажется Вам слишком простой, тот же результат можно получить более изощрённым способом с помощью функции РАЗНДАТ (DATEDIF).

=РАЗНДАТ(A2;B2;"d")
=DATEDIF(A2,B2,"d")

Следующий рисунок показывает, что обе формулы возвращают одинаковый результат, за исключением ряда 4, где функция РАЗНДАТ (DATEDIF) возвращает ошибку #ЧИСЛО! (#NUM!). Посмотрим, почему это происходит.

Когда Вы вычитаете более позднюю дату (6 мая 2015) из более ранней (1 мая 2015), операция вычитания возвращает отрицательное число. Однако синтаксис функции РАЗНДАТ (DATEDIF) не позволяет, чтобы начальная дата была больше конечной даты и, естественно, возвращает ошибку.

Сложение и вычитание дат в Excel

Пример 3. Вычитаем дату из текущей даты

Чтобы вычесть определенную дату из текущей даты, Вы можете использовать любую из ранее описанных формул. Просто вместо сегодняшней даты используйте функцию СЕГОДНЯ (TODAY):

=СЕГОДНЯ()-A2
=TODAY()-A2

или

=РАЗНДАТ(A2;СЕГОДНЯ();"d")
=DATEDIF(A2,TODAY(),"d")

Как и в предыдущем примере, формулы отлично работают, когда текущая дата больше, чем вычитаемая. В противном случае функция РАЗНДАТ (DATEDIF) возвращает ошибку.

Сложение и вычитание дат в Excel

Пример 4. Вычитание дат с помощью функции ДАТА

Если Вы предпочитаете вводить даты непосредственно в формулу, указывайте их с помощью функции ДАТА (DATE), а затем вычитайте одну дату из другой.

Функция ДАТА имеет следующий синтаксис: ДАТА(год; месяц; день).

Например, следующая формула вычитает 15 мая 2015 года из 20 мая 2015 года и возвращает разность – 5 дней.

=ДАТА(2015;5;20)-ДАТА(2015;5;15)
=DATE(2015,5,20)-DATE(2015,5,15)

Сложение и вычитание дат в Excel

Подводим итог. Если нужно вычитать даты в Excel, и Вы хотите определить количество дней между двумя датами, имеет смысл делать это самым простым и очевидным способом – напрямую вычитать одну дату из другой.

Если нужно подсчитать количество месяцев или лет между двумя датами, тогда функция РАЗНДАТ (DATEDIF) – единственное возможное решение. В продолжении статьи Вы найдёте несколько примеров формул, подробно раскрывающих эту функцию.

Теперь, когда Вы знаете, как вычитать одну дату из другой, посмотрим, как можно прибавить или вычесть из даты определённое количество дней, месяцев или лет. Для этого существует несколько функций Excel. Что именно выбрать зависит от того, какие единицы времени требуется прибавить или вычесть.

Как прибавить (вычесть) дни к дате в Excel

Если у Вас есть дата в ячейке или список дат в столбце, Вы можете прибавить к ним (или отнять) определённое количество дней, используя соответствующую арифметическую операцию.

Пример 1. Прибавление дней к дате в Excel

Общая формула добавления определённого количества дней к дате выглядит так:

= Дата + N дней

Дату можно задать несколькими способами:

  • Cсылкой на ячейку:

    =A2+10

  • Обращением к функции ДАТА (DATE):

    =ДАТА(2015;5;6)+10
    =DATE(2015,5,6)+10

  • Обращением к другой функции. Например, чтобы прибавить несколько дней к текущей дате, используйте функцию СЕГОДНЯ (TODAY):

    =СЕГОДНЯ()+10
    =TODAY()+10

Следующий рисунок показывает действие этих формул. На момент написания текста текущей датой было 6 мая 2015 г.

Сложение и вычитание дат в Excel

Примечание: Результатом выполнения этих формул является целое число, представляющее дату. Чтобы показать его как дату, необходимо выбрать ячейку (или ячейки) и нажать Ctrl+1. Откроется диалоговое окно Формат ячеек (Format Cells). На вкладке Число (Number) в списке числовых форматов выберите Дата (Date) и затем укажите нужный вам формат. Более подробное описание Вы найдёте в статье Как изменить формат даты в Excel.

Пример 2. Вычитание дней из даты в Excel

Чтобы вычесть определённое количество дней из даты, Вам снова нужно использовать обычную арифметическую операцию. Единственное отличие от предыдущего примера – минус вместо плюса :-)

= Дата - N дней

Вот несколько примеров формул:

=A2-10
=ДАТА(2015;5;6)-10
=СЕГОДНЯ()-10

Сложение и вычитание дат в Excel

Как прибавить (вычесть) несколько недель к дате

Когда требуется прибавить (вычесть) несколько недель к определенной дате, Вы можете воспользоваться теми же формулами, что и раньше. Просто нужно умножить количество недель на 7:

  • Прибавляем N недель к дате в Excel:

    = A2 + N недель * 7

    Например, чтобы прибавить 3 недели к дате в ячейке А2, используйте следующую формулу:

    =A2+3*7

  • Вычитаем N недель из даты в Excel:

    = А2 - N недель * 7

    Чтобы вычесть 2 недели из сегодняшней даты, используйте эту формулу:

    =СЕГОДНЯ()-2*7
    =TODAY()-2*7

Как прибавить (вычесть) несколько месяцев к дате в Excel

Чтобы прибавить (или отнять) определённое количество месяцев к дате, нужно использовать функцию ДАТА (DATE) или ДАТАМЕС (EDATE), как показано ниже.

Пример 1. Прибавляем несколько месяцев к дате с помощью функции ДАТА

Если список дат находится, например, в столбце A, укажите количество месяцев, которые Вы хотите добавить (положительное число) или отнять (отрицательное число) в какой-то ячейке, скажем, в C2.

Введите в ячейку B2 указанную ниже формулу, щёлкните по выделенному углу ячейки и протащите его мышкой вниз по столбцу B до последней заполненной ячейки в столбце A. Формула из ячейки B2 будет скопирована во все ячейки столбца B.

=ДАТА(ГОД(A2);МЕСЯЦ(A2)+$C$2;ДЕНЬ(A2))
=DATE(YEAR(A2),MONTH(A2)+$C$2,DAY(A2))

Сложение и вычитание дат в Excel

Посмотрим, что делает эта формула. Логика формулы ясна и очевидна. Функция ДАТА(год; месяц; день) получает следующие аргументы:

  • Год из даты в ячейке A2;
  • Месяц из даты в ячейке A2 + количество месяцев, указанное в ячейке C2;
  • День из даты в ячейке A2;

Всё просто! Если Вы введёте в C2 отрицательное число, формула вычтет месяцы, а не прибавит.

Сложение и вычитание дат в Excel

Естественно, ничто не мешает Вам ввести минус прямо в формуле, чтобы вычесть месяцы:

=ДАТА(ГОД(A2);МЕСЯЦ(A2)-$C$2;ДЕНЬ(A2))
=DATE(YEAR(A2),MONTH(A2)-$C$2,DAY(A2))

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

  • Прибавить месяцы к дате:

    =ДАТА(ГОД(A2);МЕСЯЦ(A2)+2;ДЕНЬ(A2))
    =DATE(YEAR(A2),MONTH(A2)+2,DAY(A2))

  • Вычесть месяцы из даты:

    =ДАТА(ГОД(A2);МЕСЯЦ(A2)-2;ДЕНЬ(A2))
    =DATE(YEAR(A2),MONTH(A2)-2,DAY(A2))

Пример 2. Прибавляем или вычитаем месяцы из даты с помощью функции ДАТАМЕС

В Excel предусмотрена специальная функция, которая возвращает дату, отстоящую от заданной на определенное количество месяцев назад или вперёд, – это функция ДАТАМЕС (EDATE). Она доступна в последних версиях Excel 2007, 2010, 2013 и новой Excel 2016.

При использовании ДАТАМЕС (EDATE) Вы указываете два следующих аргумента:

  • Начальная дата – дата, от которой отсчитывается количество месяцев.
  • Месяцы – количество месяцев, которые нужно прибавить (положительное число) или отнять (отрицательное число).

Эти формулы дадут тот же самый результат, что и формулы с функцией ДАТА (DATE) в предыдущем примере:

Сложение и вычитание дат в Excel

При использовании функции ДАТАМЕС (EDATE) начальную дату и количество месяцев можно указывать непосредственно в формуле. Даты можно задавать с помощью функции ДАТА (DATE) или как результат выполнения других формул. Например:

  • Эта формула прибавляет 10 месяцев к 7 мая 2015 года

    =ДАТАМЕС(ДАТА(2015;5;7);10)
    =EDATE(DATE(2015,5,7),10)

  • Эта формула отнимает 10 месяцев от сегодняшней даты

    =ДАТАМЕС(СЕГОДНЯ();-10)
    =EDATE(TODAY(),-10)

Примечание: Функция ДАТАМЕС (EDATE) возвращает просто целое число. Чтобы представить его как дату, необходимо применить к ячейке формат даты. Как это сделать, указано в статье Как изменить формат даты в Excel.

Как прибавить (отнять) годы к дате в Excel

Добавление лет к датам в Excel осуществляется так же, как добавление месяцев. Вам необходимо снова использовать функцию ДАТА (DATE), но на этот раз нужно указать количество лет, которые Вы хотите добавить:

= ДАТА(ГОД(дата) + N лет; МЕСЯЦ(дата); ДЕНЬ(дата))
= DATE(YEAR(дата) + N лет, MONTH(дата), DAY(дата))

На листе Excel, формулы могут выглядеть следующим образом:

  • Прибавляем 5 лет к дате, указанной в ячейке A2:

    =ДАТА(ГОД(A2)+5;МЕСЯЦ(A2);ДЕНЬ(A2))
    =DATE(YEAR(A2)+5,MONTH(A2),DAY(A2))

  • Вычитаем 5 лет из даты, указанной в ячейке A2:

    =ДАТА(ГОД(A2)-5;МЕСЯЦ(A2);ДЕНЬ(A2))
    =DATE(YEAR(A2)-5,MONTH(A2),DAY(A2))

Чтобы получить универсальную формулу, Вы можете ввести количество лет в ячейку, а затем в формуле обратиться к этой ячейке. Положительное число позволит прибавить годы к дате, а отрицательное – вычесть.

Сложение и вычитание дат в Excel

Прибавление (вычитание) дней, месяцев и лет к дате

Если Вы внимательно читали два предыдущих примера, то, думаю, догадались, как добавить (или вычесть) сразу годы, месяцы и дни к дате в одной формуле. Да, с помощью старой доброй функции ДАТА (DATA)!

  • Для прибавления X лет, Y месяцев и Z дней:

    = ДАТА(ГОД(дата) + X лет; МЕСЯЦ(дата) + Y месяцев; ДЕНЬ(дата) + Z дней)
    = DATE(YEAR(дата) + X лет, MONTH(дата) + Y месяцев, DAY(дата) + Z дней)

  • Для вычитания X лет, Y месяцев и Z дней:

    = ДАТА(ГОД(дата) - X лет; МЕСЯЦ(дата) - Y месяцев; ДЕНЬ(дата) - Z дней)
    = DATE(YEAR(дата) - X лет, MONTH(дата) - Y месяцев, DAY(дата) - Z дней)

Например, следующая формула прибавляет 2 года и 3 месяца, и вычитает 15 дней из даты в ячейке A2:

=ДАТА(ГОД(A2)+2;МЕСЯЦ(A2)+3;ДЕНЬ(A2)-15)
=DATE(YEAR(A2)+2,MONTH(A2)+3,DAY(A2)-15)

Применительно к нашему столбцу с датами, формула принимает следующий вид:

=ДАТА(ГОД(A2)+$C$2;МЕСЯЦ(A2)+$D$2;ДЕНЬ(A2)+$E$2)
=DATE(YEAR(A2)+$C$2,MONTH(A2)+$D$2,DAY(A2)+$E$2)

Сложение и вычитание дат в Excel

Как складывать и вычитать время в Excel

В Microsoft Excel складывать и вычитать время можно с помощью функции ВРЕМЯ (TIME). Она позволяет Вам обращаться с единицами времени (часами, минутами и секундами) так же, как и с годами, месяцами и днями в функции ДАТА (DATE).

  • Прибавить время в Excel:

    = A2 + ВРЕМЯ(часы; минуты; секунды)
    = A2 + TIME(часы, минуты, секунды)

  • Вычесть время в Excel:

    = A2 - ВРЕМЯ(часы; минуты; секунды)
    = A2 - TIME(часы, минуты, секунды)

    где A2 – это ячейка с временем, которое нужно изменить.

Например, чтобы добавить 2 часа 30 минут и 15 секунд к времени в ячейке A2 надо использовать следующую формулу:

=A2+ВРЕМЯ(2;30;15)
=A2+TIME(2,30,15)

Если вы хотите прибавлять и вычитать единицы времени в одной формуле, просто добавьте к нужным значениям знак минус "-". Следующая формула прибавляет к времени в ячейке A2 2 часа 30 минут и вычитает 15 секунд:

=A2+ВРЕМЯ(2;30;-15)
=A2+TIME(2,30,-15)

Также Вы можете ввести нужные значения в ячейки листа и ссылаться на них в формуле:

=A2+ВРЕМЯ($C$2;$D$2;$E$2)
=A2+TIME($C$2,$D$2,$E$2)

Сложение и вычитание дат в Excel

Если исходная ячейка содержит и дату, и время, предыдущая формула также прекрасно работает:

Сложение и вычитание дат в Excel

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

26.10.2015 08:30
21723

2 комментария

08.03.2016 07:12
Здравствуйте! Подскажите пожалуйста, у меня стоит excel 2010, пр вводе даты 2016 года не возникает проблем, т.е. ввожу 8-3-2016 с клавиатуры, в ячейке встает число 08.03.2016. Но при вводе дат предыдущих периодов например 23-2-2013 в ячейке остается это же значение, пробовал менять формат ячеек но это не помогает.
Здравствуйте! Причин может быть множество. Самые основные из них:
1. Вы вводите не существующую дату. Например, 29-2-2013.
2. В ячейке, в которую вы вводите дату, установлен формат Текстовый.
3. Вы допустили ошибку при вводе даты, например, случайно ввели пробел или что-то еще.

Попробуйте открыть новый лист. Выделите ячейку и убедитесь, что в ней установлен формат Общий. Затем введите какую-нибудь существующую дату, без пробелов и каких-либо других лишних знаков. Должно все получиться.

Также можете прочитать эту статью, там указаны различные варианты ввода дат и времени, которые поддерживает Excel.