Функции дата и время Excel

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

  1. ВРЕМЯ;
  2. ДАТА;
  3. ГОД;
  4. МЕСЯЦ;
  5. ДЕНЬ;
  6. ЧАС;
  7. МИНУТЫ;
  8. СЕКУНДЫ.
  9. ВРЕМЗНАЧ;
  10. ДАТАЗНАЧ;
  11. ДАТАМЕС;
  12. КОНМЕСЯЦА
  13. РАБДЕНЬ;
  14. ЧИСТРАБДНИ;
  15. ДЕНЬНЕД;
  16. НОМНЕДЕЛИ;
  17. ТДАТА;
  18. СЕГОДНЯ.

Функция ВРЕМЯ

Возвращает значение времени, составленное из отдельных частей, заданных числами.
Синтаксис: =ВРЕМЯ(часы; минуты; секунды), где

  • Часы – обязательный аргумент. Число либо ссылка на ячейку, содержащую числовое значение от 1 до 24.
  • Минуты – обязательный аргумент. Число либо ссылка на ячейку, содержащую числовое значение от 1 до 60.
  • Секунды – аналогично минутам.

Функция ВРЕМЯ не может возвращать значение от 24 и выше, т.е. если для аргумента «Часы» задать число 25, то результатом будет 1 час.

Пример использования:
На изображении приведены несколько вариантов использования данной функции. Видно, если показатель секунд превышает значение 60, то его часть перекидывается на минуты. То же самое произойдет, если будет превышен показатель для минут. Если превышен показатель для аргумента, принимающего часы, то он просто будет отображать время на 24 часа меньше заданного.

Примеры использования функции ВРЕМЯ

Функция ДАТА

Возвращает значение даты, составленное из отдельных частей, заданных числами.
Синтаксис: =ДАТА(год; месяц; день), где

  • Год – обязательный аргумент. Число либо ссылка на ячейку, содержащую числовое значение от 1900 до 9999.
  • Месяц – обязательный аргумент. Число либо ссылка на ячейку, содержащую числовое значение от 1 до 12.
  • День – обязательный аргумент. Число либо ссылка на ячейку, содержащую числовое значение от 1 до 31.

Если для аргумента «День» задать число, превышающее количество дней в указанном месяце, то лишние дни будут переданы на следующие месяцы, т.е. если для января указать 32 дня, то функция вернет 1 февраля.

Пример использования:
Обратите внимание на пример таблицы. Последние 2 строки возвращают одинаковый результат. Т.к. минимальная дата, которая может быть представлена в Excel, имеет 1900 год, то ко всем числам, которые переданы аргументу «Год» и меньше минимального года, то к ним автоматически прибавляется 1900.

Примеры использования функции ДАТА

Функция ГОД

Возвращает число, представляющее год указанной даты.
Синтаксис: =ГОД(дата), где «дата» является обязательным аргументом и принимает числовое значение даты либо ссылку на такое значение.
Пример использования:
=ГОД("08.10.2013") – возвращаемый результат 2013.
=ГОД(41555) – так же возвращаемый результат 2013, т.к. 41555 является числовым представление даты 08 октября 2013.

Функция МЕСЯЦ

Возвращает число, представляющее месяц указанной даты.
Синтаксис: =МЕСЯЦ(дата), где «дата» является обязательным аргументом и принимает числовое значение даты либо ссылку на такое значение.

Пример использования:
=МЕСЯЦ("01.01.2001") – возвращаемый результат 1.
=МЕСЯЦ(36892) – так же возвращаемый результат 1, т.к. 36892 является числовым представление даты 01.01.2001.

Функция ДЕНЬ

Возвращает число, представляющее день указанной даты.
Синтаксис: =ДЕНЬ(дата), где «дата» является обязательным аргументом и принимает числовое значение даты либо ссылку на такое значение.

Пример использования:
=ДЕНЬ("09.05.1945") – возвращаемый результат 9.
=ДЕНЬ(16566) – так же возвращаемый результат 9, т.к. 16566 является числовым представление даты 09.05.1945.

Функция ЧАС

Возвращает число от 0 до 23, представляющее час указанного времени или даты.
Синтаксис: =ЧАС(время), где «время» является обязательным аргументом и принимает числовое значение времени, даты либо ссылку на такое значение.

Пример использования:
=ЧАС("14:34:50") – функция вернет значение 14.
=ЧАС(0,0241898148) – так же возвращает значение 14, так как 0,0241898148 является числовым представлением времени 14 часов 34 минуты 50 секунд.

Функция МИНУТЫ

Возвращает число от 0 до 59, представляющее минуты указанного времени или даты.
Синтаксис: =МИНУТЫ(время), где «время» является обязательным аргументом и принимает числовое значение времени, даты либо ссылку на такое значение.

Пример использования:
=МИНУТЫ("22:45:00 ") – функция вернет значение 45.
=МИНУТЫ(0,428472222222222) – возвращает значение 17, так как 0,428472222222222 является числовым представлением времени 10:17:00.

Функция СЕКУНДЫ

Возвращает число от 0 до 59, представляющее секунды указанного времени или даты.
Синтаксис: =СЕКУНДЫ(время), где «время» является обязательным аргументом и принимает числовое значение времени, даты либо ссылку на такое значение.

Пример использования:
=СЕКУНДЫ("07:23:32") – функция вернет значение 32.
=СЕКУНДЫ(0,999988425925926) – возвращает значение 59, так как 0,999988425925926 является числовым представлением времени 23:59:59.

Функция ВРЕМЗНАЧ

Преобразует время, заданное текстовой строкой, в его числовое значение. Распознаются только те форматы записи времени, которое доступны в меню формата ячеек.
Синтаксис: =ВРЕМЗНАЧ(текст), где «текст» - обязательный аргумент, принимающий строку времени либо ссылку на такую строку.

Пример использования:
На изображении приведены несколько вариантов использования функции ВРЕМЗНАЧ. Обратите внимание на первый столбец, в нем указываются все строки, которые были заданы для аргумента рассматриваемой функции. Все значения явно указаны строкой, кроме последней, поэтому функция ее не преобразует и возвращается ошибку. В четвертой строке указана дата и время, но функцией воспринимается только временное значение. Остальная часть игнорируется.

Примеры ВРЕМЯЗНАЧ

Функция ДАТАЗНАЧ

Преобразует дату, заданную текстовой строкой, в ее числовое значение. Распознаются только те форматы записи даты, которое доступны в меню формата ячеек.
Синтаксис: =ДАТАЗНАЧ(текст), где «текст» - обязательный аргумент, принимающий строку даты либо ссылку на такую строку.

Пример использования:
На изображении приведены различные варианты использования функции ДАТАЗНАЧ. В первом столбце указываются строки, которые были заданы для аргумента рассматриваемой функции. Все значения явно указаны строкой, но последняя задана обычным значением, поэтому функция ее игнорирует и возвращается ошибку. В четвертой строке указана дата и время, но функцией обрабатывается только значение для даты.

Примеры ДАТАЗНАЧ

Функция ДАТАМЕС

Возвращает дату, которая наступит либо наступила через указанное количество месяцев. Удобство использование функции заключается в том, что нет необходимости помнить о количестве дней в том или ином месяце.

Синтаксис: =ДАТАМЕС(начальная_дата; число_месяцев), где

  • начальная_дата – обязательный аргумент. Значение даты либо ссылка на ячейку, содержащую такое значение.
  • число_месяцев – обязательный аргумент. Целое число либо ссылка на такое число, указывающее, какое количество месяцев необходимо прибавить к начальной дате.

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

Пример использования:
=ДАТАМЕС("01.01.2001"; 2) – функция возвращает результат 01.03.2001.
=ДАТАМЕС("01.01.2001"; -2) – результат 01.11.2000.
=ДАТАМЕС("01.01.2001 10:00:00"; 2) – функцией урезается время и возвращается результат 01.03.2001.

Функция КОНМЕСЯЦА

Возвращает последнюю дату месяца, который наступит либо наступил через указанное количество месяцев. Функция похожа на ДАТАМЕС, но возвращает не указанный день, а последний день высчитанного месяца.
Синтаксис: =КОНМЕСЯЦА(начальная_дата; число_месяцев), где

  • начальная_дата – обязательный аргумент. Значение даты либо ссылка на ячейку, содержащую такое значение.
  • число_месяцев – обязательный аргумент. Целое число либо ссылка на такое число, указывающее, какое количество месяцев необходимо прибавить к месяцу начальной даты.

Если начальная дата указана вместе со временем, то оно усекается.

Пример использования:
=КОНМЕСЯЦА("01.01.2001"; 0) – функция возвращает результат 31.01.2001.
=КОНМЕСЯЦА("01.01.2001"; -2) – результат 30.11.2000.
=КОНМЕСЯЦА("01.01.2001 10:00:00"; 2)– функцией урезается время и возвращается результат 31.03.2001.

Функция РАБДЕНЬ

Высчитывает и возвращает дату, которая наступит или наступила через указанное количество рабочих дней. Нерабочими днями считается суббота, воскресенье и праздничные дни.
Синтаксис: =РАБДЕНЬ(начальная_дата; число_дней; [праздники]), где

  • начальная_дата – обязательный аргумент. Значение даты либо ссылка на ячейку, содержащую такое значение.
  • число_дней – обязательный аргумент. Число либо ссылка на такое число, указывающее количество рабочих дней, которое должно пройти, чтобы получить высчитываемую дату.
  • Праздники – необязательный аргумент. Дата, диапазон ячеек с датами либо массив дат, которые необходимо исключить из рабочих дней.

Пример использования:
=РАБДЕНЬ("11.06.2013";1) – возвращает результат 12.06.2013.
=РАБДЕНЬ("11.06.2013";4) – результат 17.06.2013.
=РАБДЕНЬ("11.06.2013";1; "12.06.2013") – функция вернет результат 13.06.2013.
=РАБДЕНЬ("11.06.2013";1; {"12.06.2013";"13.06.2013"}) – результатом будет 14.06.2013.

Функция ЧИСТРАБДНИ

Возвращает количество рабочих дней между указанными датами (включительно). Нерабочими днями считается суббота, воскресенье и праздничные дни.
Синтаксис: =ЧИСТРАБДНИ(начальная_дата; конечная_дата; [праздники]), где

  • начальная_дата и конечная_дата – обязательные аргументы. Значение даты либо ссылка на ячейку, содержащую такое значение.
  • праздники – необязательный аргумент. Дата, диапазон ячеек с датами либо массив дат, которые необходимо исключить из рабочих дней.

Пример использования:
=ЧИСТРАБДНИ("11.06.2013";"16.06.2013") – результат функции 4.
=ЧИСТРАБДНИ("11.06.2013";"16.06.2013";"14.06.2013") – возвращаемый результат 3.

Функция ДЕНЬНЕД

Возвращает порядковый номер дня недели для указанной даты. Также можно указать тип нумерации дней недели.

Синтаксис: =ДЕНЬНЕД(дата; [тип]), где

  • дата – обязательный аргумент, принимающий дату либо ссылку на дату для которой необходимо определить день недели.
  • тип – необязательный аргумент. Целое число от 1 до 3, которое указывает формат подсчета:
    • 1 – неделя начинается с воскресенья. Является значением по умолчанию;
    • 2 – неделя начинается с понедельника;
    • 3 – неделя начинается с понедельника, а отсчет начинается с нуля.

Пример использования:
=ДЕНЬНЕД("07.10.2013") – результат функции 2, т.к. аргумент тип не указан, а дата является понедельником.
=ДЕНЬНЕД("07.10.2013", 2) – результат выполнения функции 1.
=ДЕНЬНЕД("07.10.2013", 3) – результат 0.

Функция НОМНЕДЕЛИ

Возвращает порядковый номер недели в году.

Синтаксис: =НОМНЕДЕЛИ(дата; [тип]) , где

  • дата – обязательный аргумент, принимающий дату либо ссылку на дату для которой необходимо определить день недели.
  • тип – необязательный аргумент. Целое число от 1 до 2, которое указывает формат недели:
    • 1 – неделя начинается с воскресенья. Является значением по умолчанию;
    • 2 – неделя начинается с понедельника;

Пример использования:
=НОМНЕДЕЛИ("07.10.2013", 1) – возвращает результат 41.
=НОМНЕДЕЛИ("07.10.2013", 2) – возвращает 40.

Функция ТДАТА

Возвращает текущее (системное) дату и время.

Синтаксис: =ТДАТА(). Функция не имеет аргументов.

Функция СЕГОДНЯ

Возвращает текущую дату без времени.

Синтаксис: =СЕГОДНЯ(). Функция не имеет аргументов.

Комментарии  

+1 # Владимир 15.06.2015 22:29
А как отключить пересчет всего листа при протягивании ячеек? Поясню: пробую задать автоматически время изменения ячейки, т.е при изменении «E7″ выставляется время в «В7″, и так для каждой строки. Но в итоге время меняется по всему столбцу «В» при изменении любой ячейки по столбцу «Е». Буду очень признателен за подсказку
Ответить | Ответить с цитатой | Цитировать
+2 # Андрей 15.06.2015 23:20
Владимир, добрый день!

Если я правильно понял, то Вы хотите записывать время последнего изменения ячейки в строке.
Это реализуется с помощью макросов (событие изменения ячейки с проверкой измененного диапазона).
Читайте про событийные процедуры VBA.

Чтобы просто отключить автоматический пересчет нужно на вкладке ФОРМУЛЫ ленты Excel в параметрах вычислений (иконка в виде калькулятора) выбрать пункт ВРУЧНУЮ. Но это не решит проблему фиксации времени изменения ячейки, т.к. при пересчете отобразится текущее время.
Ответить | Ответить с цитатой | Цитировать

Добавить комментарий