Функции времени ГОД, МЕСЯЦ, ДЕНЬ в Excel
В этой статье мы поговорим о трёх основных функций дат, это функция ГОД, функция МЕСЯЦ и функция ДЕНЬ в Excel. Это три составляющие любой даты и теперь рассмотрим, как с ними работать и для чего это нам надо. В первую очередь, эти функции служат для извлечения определенного параметра из имеющейся даты, мы может отдельно изъять год, числовую последовательность месяца или дня. Использование этих функций будет актуально когда, к примеру, нужно будет поделить ваши данные по временным отрезкам по годам, по месяцам или по дням. Часто использование этих функций оправдано при работе со статистическими данными, когда их применение улучшают показатели анализа.
Теперь давайте рассмотрим каждую из функций времени по отдельности:
Функция ГОД в Excel
Основная обязанность, которую выполняет функция ГОД в Excel, является возврат года, который будет соответствовать указанной дате. Сам год будет определять функция ГОД как целое число в диапазоне от 1900 года до 9999 года.
Синтаксис, который использует функция ГОД в Excel очень простой:
=ГОД(указаная_дата_в_числовом_формате)
Дата_в_числовом_формате, является обязательным аргументом и представляет собой дату, год которой следует вычислить. Даты нужно вводить при помощи функции ДАТА, указывать ссылкой на ячейку, которая содержит дату в соответствующем формате или это будет результат отдельных расчётов иных функций и формул
Важно!В случае, когда дата будет введена как текст, это приведёт к ошибкам и проблемам.
Стоит знать что значения, которое возвращает функция ГОД в Excel полностью, ведется по григорианскому календарю, без разницы какой формат для даты был указан. Даже если вы указываете дату по другому летоисчислению или альтернативному календарю, значение которое функция ГОД вернет, будет соответствовать дате григорианского календаря.
Все даты MS Excel хранит как последовательные числа и именно это позволяет нам работать с ними и использовать в своих вычислениях. По умолчанию первая дата под номером 1, это 1 января 1900 года, а вот, к примеру, 1 января 2018 года будет предоставлен числом 43101, так разница между этими двумя датами будет составлять 43101 день.
Функция МЕСЯЦ в Excel
Главная особенность, как используется функция МЕСЯЦ в Excel, это возврат значения месяца из даты, который заданный как числовой формат. Месяц будет возвращен функцией как целое число в диапазоне чисел от 1 до 12, что соответствует месяцам от января до декабря.
Синтаксис, который использует функция МЕСЯЦ в Excel, простой и незатейливый:
=МЕСЯЦ(ваша_дата_в_числовом_формате)
Дата_в_числовом_формате, является обязательным аргументом и представляет собой дату, месяц которой следует вычислить. Даты нужно вводить при помощи функции ДАТА, указывать ссылкой на ячейку, которая содержит дату в соответствующем формате или это будет результат отдельных расчётов иных функций и формул
Важно!В случае, когда дата будет введена как текст, это приведёт к ошибкам и проблемам.
Особенности, как используется функция МЕСЯЦ в Excel, соответствуют аналогично предыдущей рассматриваемой функции, так как формат дат распространяется на все функции времени.
Функция ДЕНЬ в Excel
Основная обязанность, которую выполняет функция ДЕНЬ в Excel, является возврат число дня, которое будет в указанной дате. День будет возвращен функцией как целое число в диапазоне чисел от 1 до 31, что зависит от максимального количества дней в месяце.
Синтаксис, который использует функция ДЕНЬ в Excel, так же не отличаеться обилием аргументов:
=ДЕНЬ(ваша_дата_в_числовом_формате)
Дата_в_числовом_формате, является обязательным аргументом и представляет собой дату, день которой следует вычислить. Даты нужно вводить при помощи функции ДАТА, указывать ссылкой на ячейку, которая содержит дату в соответствующем формате или это будет результат отдельных расчётов иных функций и формул
Важно!В случае, когда дата будет введена как текст, это приведёт к ошибкам и проблемам.
Как и предыдущие функции, функция ДЕНЬ в Excel хранит даты как последовательные числа и значения которые она возвращает, соответствуют датам григорианского календаря.
Отдельно для каждой функции я решил не создавать примеры их использования, поскольку они очень схожи в характере работы, рознятся только полученные результаты, разницу вы можете изучить на скриншоте:
Как посчитать количество дней в Excel
Ну, вот и всё что я, пока, хотел вам рассказать о таких функциях работы с датами как функция ГОД, функция МЕСЯЦ и функция ДЕНЬ. Очень надеюсь, что моя статья вам помогла в решении вашей проблемы. Жду ваши лайки и комментарии, делитесь статьей с друзьями и коллегами, пусть нас будет много!
MySQL | Функции для работы с датами и временем
Последнее обновление: 26.05.2018
MySQL имеет ряд встроенных функций для работы с датами и временем.
Получение даты и времени
- Функции NOW(), SYSDATE(), CURRENT_TIMESTAMP() возвращают текущую локальную дату и время на основе системных часов в виде объекта datetime. Все три функции возвращают одинаковый результат SELECT NOW(); — 2018-05-25 21:34:55
SELECT SYSDATE(); — 2018-05-25 21:34:55
SELECT CURRENT_TIMESTAMP(); — 2018-05-25 21:32:55 - Функции CURDATE и CURRENT_DATE возвращают текущую локальную дату в виде объекта date: SELECT CURRENT_DATE(); — 2018-05-25
SELECT CURDATE(); — 2018-05-25 - Функции CURTIME и CURRENT_TIME возвращают текущее время в виде объекта time: SELECT CURRENT_TIME(); — 20:47:45
SELECT CURTIME(); — 20:47:45 - UTC_DATE возвращает текущую локальную дату относительно GMT SELECT UTC_DATE(); — 2018-05-25
- UTC_TIME возвращает текущее локальное время относительно GMT SELECT UTC_TIME(); — 17:47:45
Парсинг даты и времени
- DAYOFMONTH(date) возвращает день месяца в виде числового значения
- DAYOFWEEK(date) возвращает день недели в виде числового значения
- DAYOFYEAR(date) возвращает номер дня в году
- MONTH(date) возвращает месяц даты
- YEAR(date) возвращает год из даты
- QUARTER(date) возвращает номер квартала года
- WEEK(date ) возвращает номер недели года. Необязательный параметр позволяет задать стартовый день недели. Если этот параметр равен 1, то первым днем считается понедельник, иначе воскресенье
- LAST_DAY(date) возвращает последний день месяца в виде даты
- DAYNAME(date) возвращает название дня недели
- MONTHNAME(date) возвращает название текущего месяца
- HOUR(time) возвращает час времени
- MINUTE(time) возвращает минуту времени
- SECOND(time) возвращает секунду времени
Примеры функций:
Функция EXTRACT
Функция EXTRACT извлекает из даты и времени какой-то определенный компонент. Ее формальный синтаксис:
EXTRACT(unit FROM datetime)
Значение datetime представляет исходную дату и (или) время, а значение unit указывает, какой компонент даты или времени будет извлекаться. Параметр unit может представлять одно из следующих значений:
- SECOND (секунды)
- MINUTE (минуты)
- HOUR (час)
- DAY (день)
- MONTH (месяц)
- YEAR (год)
- MINUTE_SECOND (минуты и секунды)
- HOUR_MINUTE (часы и минуты)
- DAY_HOUR (день и часы)
- YEAR_MONTH (год и месяц)
- HOUR_SECOND (часы, минуты и секунды)
- DAY_MINUTE (день, часы и минуты)
- DAY_SECOND (день, чаы, минуты и секунды)
Примеры вызова функции:
Функции для манипуляции с датами
Ряд функций позволяют производить операции сложения и вычитания с датами и временем:
- DATE_ADD(date, INTERVAL expression unit) возвращает объект DATE или DATETIME, который является результатом сложения даты date с определенным временным интервалом. Интервал задается с помощью выражения INTERVAL expression unit, где INTERVAL предоставляет ключевое слово, expression — количество добавляемых к дате единиц, а unit — тип единиц (часы, дни и т.д.) Параметр unit может иметь те же значения, что и в функции EXTRACT, то есть DAY, HOUR и т.д.
- DATE_SUB(date, INTERVAL expression unit) возвращает объект DATE или DATETIME, который является результатом вычитания из даты date определенного временного интервала
- DATEDIFF(date1, date2) возвращает разницу в днях между датами date1 и date2
- TO_DAYS(date) возвращает количество дней с 0-го года
- TIME_TO_SEC(time) возвращает количество секунд, прошедших с момента полуночи
Примеры применения:
Форматирование дат и времени
- DATE_FORMAT(date, format) возвращает объект DATE или DATETIME, отформатированный с помощью шаблона format
- TIME_FORMAT(date, format) возвращает объект TIME или DATETIME, отформатированный с помощью шаблона format
Обе функции в качестве второго параметра принимают строку форматирования или шаблон, который показывает, как оформатировать значение. Этот шаблон может принимать следующие значения:
- %m: месяц в числовом формате 01..12
- %с: месяц в числовом формате 1..12
- %M: название месяца (January…December)
- %b: аббревиатура месяца (Jan…Dec)
- %d: день месяца в числовом формате 00..31
- %e: день месяца в числовом формате 0..31
- %D: номер дня месяца с суффиксом (1st, 2nd, 3rd…)
- %y: год в виде двух чисел
- %Y: год в виде четырех чисел
- %W: название дня недели (Sunday…Saturday)
- %a: аббревиатура дня недели (Sun…Sat)
- %H: час в формате 00..23
- %k: час в формате 0..23
- %h: час в формате 01..12
- %l: час в формате 1..12
- %i: минуты в формате 00..59
- %r: время в 12-ти часовом формате (hh:mm:ss AM или PM)
- %T: время в 24-ти часовом формате (hh:mm:ss)
- %S: секунды в формате 00..59
- %p: AM или PM
Примеры применения:
В качестве примера использования функций найдем заказы, которые были сделаны 5 дней назад:
Функция ВРЕМЯ
Возвращает значение времени, составленное из отдельных частей, заданных числами.Синтаксис: =ВРЕМЯ(часы; минуты; секунды), где
- Часы – обязательный аргумент. Число либо ссылка на ячейку, содержащую числовое значение от 1 до 24.
- Минуты – обязательный аргумент. Число либо ссылка на ячейку, содержащую числовое значение от 1 до 60.
- Секунды – аналогично минутам.
Функция ВРЕМЯ не может возвращать значение от 24 и выше, т.е. если для аргумента «Часы» задать число 25, то результатом будет 1 час.
Пример использования:На изображении приведены несколько вариантов использования данной функции. Видно, если показатель секунд превышает значение 60, то его часть перекидывается на минуты. То же самое произойдет, если будет превышен показатель для минут. Если превышен показатель для аргумента, принимающего часы, то он просто будет отображать время на 24 часа меньше заданного.
Получать рабочие часы между датами собственного расписания
Чтобы вычислить часы работы между двумя датами с настраиваемым расписанием, вы можете использовать формулу, основанную на функциях ДЕНЬНЕД и ВЫБОР.
В показанном примере формула в F5:
Который возвращает 32 часа, основанный на пользовательском расписании, где 8 часов работают в Пн, Ср и Пт, а 4 часа — в Пт и Вт.
Примечание. Это формула массива, которая должна вводиться с помощью Control + Shift + Enter.
По сути, эта формула использует функцию ДЕНЬНЕД для определения дня недели (например, понедельник, вторник и т. д.) Для каждого дня между двумя указанными датами.
ДЕНЬНЕД возвращает число от 1 до 7, соответствующее конкретному дню недели. С настройками по умолчанию: 1 = воскресенье и 7 = суббота, поэтому, 2 = понедельник, 6 = пятница и так далее.
Хитрость этой формулы заключается в создании массива дат, которые вы можете использовать в функции ДЕНЬНЕД. Это делается с помощью СТРОКА с ДВССЫЛ следующим образом:
ДВССЫЛ позволяет связанным датам «» 42464: 42470 «» интерпретироваться как номера строк. Затем функция СТРОКА возвращает массив вроде этого:
Функция ДЕНЬНЕД оценивает эти числа как даты и возвращает этот массив:
Эти числа соответствуют дню недели каждой даты.
Этот массив затем передается функции ВЫБОР в качестве «номера индекса», который был сконфигурирован с 7 значениями:
Поскольку мы даем ВЫБОР более чем одно значение индекса, он возвращает более одного результата в массиве следующим образом:
Эти цифры соответствуют часам, которые выполнялись каждый день с даты 1 по дату2.
Наконец, чтобы получить итоговое значение, нам просто нужно обернуть ВЫБОР в СУММ и ввести формулу массива.
В этом примере итоговый результат составляет 32 часа.
Примечание: вы могли бы подумать, что вы могли бы использовать СУММПРОИЗВ вместо СУММ, чтобы избежать синтаксиса массива, но он не работает; Вам все равно придется использовать CSE. Я знаю, что причина заключается в использовании ДВССЫЛ с СТРОКА для построения массива значений индекса, но не знаю, почему это требует CSE.
2 популярных способа сравнения 2 дат в Excel
Итак, если нам требуется сравнить две даты между собой, это можно сделать двумя основными методами в зависимости от поставленной задачи. Давайте узнаем, какие они. В этом нет ничего сложного, формулы довольно простые и почти не отличаются от тех, которые применяются для работы с числами. Не забываем о том, что дата воспринимается электронной таблицей, как число, и обрабатывается аналогичным образом.
Первая дата больше второй, или нет
В этом случае нужно использовать аналогичную формулу, которая используется для проверки чисел: =A1>A2. Если эта проверка подтверждается, то в ячейку, куда была записана эта формула, возвращается значение “ИСТИНА”. Если же первое число меньше второго, то тогда будет записано “ЛОЖЬ”. Аналогично, только зеркально противоположно с формулой =A1
Функция ЕСЛИ, значение ИСТИНА или ЛОЖЬ
Это уже более сложный вариант, который дает возможность не только говорить, действительно ли одна дата больше другой, но и указывать, на какое количество дней. Чтобы это сделать, необходимо нажать по ячейке и записать туда формулу =ЕСЛИ(A2>B2;»Первая дата больше второй на»&» «&A2-B2&» «&»дней»;»Первая дата меньше второй на»&» «&B2-A2&» «&»дней»)
1
Здесь мы осуществляем проверку двух дат, и исходя из того, что у нас получилось в итоге, выводим результат, на сколько дней первая дата больше, чем вторая. Чтобы это сделать, нами был использовал оператор &, который объединяет две строки текста между собой и объединенный результат возвращает в ячейку. Далее получившийся текст можно использовать сам по себе или в других формулах.
Примеры функций для работы с датами: ГОД, МЕСЯЦ и ДЕНЬ в Excel
В таблицах Excel предусмотрена возможность работы с различными видами текстовой и числовой информации. Доступна и обработка дат. При этом может возникнуть потребность вычленения из общего значения конкретного числа, например, года. Для этого существует отдельные функции: ГОД, МЕСЯЦ, ДЕНЬ и ДЕНЬНЕД.
Примеры использования функций для обработки даты в Excel
Таблицы Excel хранят даты, которые представлены в качестве последовательности числовых значений. Начинается она с 1 января 1900 года. Этой дате будет соответствовать число 1. При этом 1 января 2009 года заложено в таблицах, как число 39813. Именно такое количество дней между двумя обозначенными датами.
Функция ГОД используется аналогично смежным:
- МЕСЯЦ;
- ДЕНЬ;
- ДЕНЬНЕД.
Все они отображают числовые значения, соответствующие григорианскому календарю. Даже если в таблице Excel для отображения введенной даты был выбран календарь Хиджра, то при вычленении года и других составных значений посредством функций, приложение представит число, которое является эквивалентом по григорианской системе летоисчисления.
Чтобы воспользоваться функцией ГОД, нужно ввести в ячейку следующую формулу функции с одним аргументом:
=ГОД(адрес ячейки с датой в числовом формате)
Аргумент функции является обязательным для заполнения. Он может быть заменен на «дата_в_числовом_формате». В примерах ниже, вы сможете наглядно увидеть это
Важно помнить, что при отображении даты в качестве текста (автоматическая ориентация по левому краю ячейки), функция ГОД не будет выполнена. Ее результатом станет отображение #ЗНАЧ
Поэтому форматируемые даты должны быть представлены в числовом варианте. Дни, месяцы и год могут быть разделены точкой, слешем или запятой.
Рассмотрим пример работы с функцией ГОД в Excel. Если нам нужно получить год из исходной даты нам не поможет функция ПРАВСИМВ так как она не работает с датами, а только лишь текстовыми и числовыми значениями. Чтобы отделить год, месяц или день от полной даты для этого в Excel предусмотрены функции для работы с датами.
Пример: Есть таблица с перечнем дат и в каждой из них необходимо отделить значение только года.
Введем исходные данные в Excel.
Для решения поставленной задачи, необходимо в ячейки столбца B ввести формулу:
=ГОД (адрес ячейки, из даты которой нужно вычленить значение года)
В результате мы извлекаем года из каждой даты.
Аналогичный пример работы функции МЕСЯЦ в Excel:
Пример работы c функциями ДЕНЬ и ДЕНЬНЕД. Функция ДЕНЬ получает вычислить из даты число любого дня:
Функция ДЕНЬНЕД возвращает номер дня недели (1-понедельник, 2-второник… и т.д.) для любой даты:
Во втором опциональном аргументе функции ДЕНЬНЕД следует указать число 2 для нашего формата отсчета дня недели (с понедельника-1 по восркесенье-7):
Если пропустить второй необязательный для заполнения аргумент, тогда будет использоваться формат по умолчанию (английский с воскресенья-1 по суботу-7).
Создадим формулу из комбинаций функций ИНДЕКС и ДЕНЬНЕД:
Получим более понятный вид реализации данной функции.
Примеры практического применения функций для работы с датами
Эти примитивные функции очень полезны при группировки данных по: годам, месяцам, дням недели и конкретным дням.
Допустим у нас имеется простой отчет по продажам:
Нам нужно быстро организовать данные для визуального анализа без использования сводных таблиц. Для этого приведем отчет в таблицу где можно удобно и быстро группировать данные по годам месяцам и дням недели:
Теперь у нас есть инструмент для работы с этим отчетом по продажам. Мы можем фильтровать и сегментировать данные по определенным критериям времени:
Кроме того, можно составить гистограмму для анализа самых продаваемых дней недели, понять на какой день недели приходится наибольшее количество продаж:
В таком виде очень удобно сегментировать отчеты по продажам за длительные, средние и короткие периоды времени.
Стоит сразу отметить что для того чтобы получить разницу между двумя датами нам не поможет ни одна из выше описанных функций. Для данной задачи следует воспользоваться специально предназначенной функцией РАЗНДАТ:
Тип значений в ячейках «дата» требует особого подхода при обработке данных. Поэтому следует использовать соответствующие данному типу функции в Excel.
Функция DateDiff
DateDiff – это функция, которая возвращает количество указанных интервалов времени между двумя датами. Тип возвращаемого значения – Variant/Long.
Синтаксис
1 | DateDiff(interval,date1,date2,firstdayofweek,firstweekofyear) |
Параметры
Параметр | Описание |
---|---|
interval | Обязательный параметр. Строковое выражение из спецсимволов, представляющее интервал времени, количество которых (интервалов) требуется вычислить между двумя датами. |
date1, date2 | Обязательные параметры. Значения типа , представляющие две даты, между которыми вычисляется количество указанных интервалов. |
firstdayofweek | Необязательный параметр. Константа, задающая первый день недели. По умолчанию – воскресенье. |
firstweekofyear | Необязательный параметр. Константа, задающая первую неделю года. По умолчанию – неделя, в которую входит 1 января. |
Таблицу аргументов (значений) параметра смотрите в параграфе «Приложение 1».
Примечание к таблице аргументов: в отличие от функции , в функции спецсимвол , как и , обозначает неделю. Но расчет осуществляется по разному. Подробнее об этом на сайте разработчиков.
Параметры и определяют правила расчета количества недель между датами.
Таблицы констант из коллекций и смотрите в параграфах «Приложение 2» и «Приложение 3».
Пример
1 |
SubPrimerDateDiff() ‘Даже если между датами соседних лет разница 1 день, MsgBox DateDiff(«y»,»31.12.2020″,»01.01.2021″)’Результат: 1 год MsgBox DateDiff(«d»,»31.12.2020″,»01.01.2021″)’Результат: 1 день MsgBox DateDiff(«n»,»31.12.2020″,»01.01.2021″)’Результат: 1440 минут MsgBox»Полных лет с начала века = «&DateDiff(«y»,»2000″,Year(Now)-1) EndSub |
Примеры использования функций для обработки даты в Excel
Таблицы Excel хранят даты, которые представлены в качестве последовательности числовых значений. Начинается она с 1 января 1900 года. Этой дате будет соответствовать число 1. При этом 1 января 2009 года заложено в таблицах, как число 39813. Именно такое количество дней между двумя обозначенными датами.
Функция ГОД используется аналогично смежным:
Все они отображают числовые значения, соответствующие григорианскому календарю. Даже если в таблице Excel для отображения введенной даты был выбран календарь Хиджра, то при вычленении года и других составных значений посредством функций, приложение представит число, которое является эквивалентом по григорианской системе летоисчисления.
Чтобы воспользоваться функцией ГОД, нужно ввести в ячейку следующую формулу функции с одним аргументом:
=ГОД(адрес ячейки с датой в числовом формате)
Аргумент функции является обязательным для заполнения. Он может быть заменен на «дата_в_числовом_формате». В примерах ниже, вы сможете наглядно увидеть это
Важно помнить, что при отображении даты в качестве текста (автоматическая ориентация по левому краю ячейки), функция ГОД не будет выполнена. Ее результатом станет отображение #ЗНАЧ
Поэтому форматируемые даты должны быть представлены в числовом варианте. Дни, месяцы и год могут быть разделены точкой, слешем или запятой.
Рассмотрим пример работы с функцией ГОД в Excel. Если нам нужно получить год из исходной даты нам не поможет функция ПРАВСИМВ так как она не работает с датами, а только лишь текстовыми и числовыми значениями. Чтобы отделить год, месяц или день от полной даты для этого в Excel предусмотрены функции для работы с датами.
Пример: Есть таблица с перечнем дат и в каждой из них необходимо отделить значение только года.
Введем исходные данные в Excel.
Для решения поставленной задачи, необходимо в ячейки столбца B ввести формулу:
=ГОД (адрес ячейки, из даты которой нужно вычленить значение года)
В результате мы извлекаем года из каждой даты.
Аналогичный пример работы функции МЕСЯЦ в Excel:
Пример работы c функциями ДЕНЬ и ДЕНЬНЕД. Функция ДЕНЬ получает вычислить из даты число любого дня:
Функция ДЕНЬНЕД возвращает номер дня недели (1-понедельник, 2-второник… и т.д.) для любой даты:
Во втором опциональном аргументе функции ДЕНЬНЕД следует указать число 2 для нашего формата отсчета дня недели (с понедельника-1 по восркесенье-7):
Если пропустить второй необязательный для заполнения аргумент, тогда будет использоваться формат по умолчанию (английский с воскресенья-1 по суботу-7).
Создадим формулу из комбинаций функций ИНДЕКС и ДЕНЬНЕД:
Получим более понятный вид реализации данной функции.
Другие расчеты даты и времени
Как показано выше, функция РАЗНДАТ вычисляет разницу между датой начала и конечной датой. Однако вместо ввода определенных дат можно также использовать функцию Today () в формуле. При использовании функции TODAY () Excel использует текущую дату на компьютере. Имейте в виду, что при повторном открытии файла в будущем этот файл изменится.
Обратите внимание на то, что на момент написания статьи день – 6 октября 2016 г. Используйте ЧИСТРАБДНИ
INTL, если требуется вычислить количество рабочих дней между двумя датами. Кроме того, вы можете также исключить выходные и праздничные дни
Используйте ЧИСТРАБДНИ. INTL, если требуется вычислить количество рабочих дней между двумя датами. Кроме того, вы можете также исключить выходные и праздничные дни.
Прежде чем начать, выполните указанные ниже действия.Решите, нужно ли исключить даты праздников. Если это так, введите список дат праздников в отдельную область или на лист. Каждый день праздников помещается в отдельную ячейку. Затем выделите эти ячейки, а затем выберите формулы > задать имя. Назовите диапазон михолидайси нажмите кнопку ОК. Затем создайте формулу, выполнив указанные ниже действия.
В этом примере Дата начала находится в ячейке D53, а Дата окончания — в ячейке E53.
2. в другой ячейке введите формулу, например:
Введите формулу, например приведенный выше пример. 1 в формуле определяет «Суббота» и «воскресенье» в качестве выходных дней и исключает их из итогового значения.
Примечание. в Excel 2007 нет ЧИСТРАБДНИ. МЕЖД. Однако у него есть ЧИСТРАБДНИ. Приведенный выше пример будет выглядеть следующим образом в Excel 2007: = ЧИСТРАБДНИ (D53, E53). Вы не укажете 1, так как ЧИСТРАБДНИ предполагает, что выходные дни — суббота и воскресенье.
3. при необходимости измените значение 1.
Если Суббота и воскресенье не являются выходными днями, измените значение 1 на другой в списке IntelliSense. Например, 2 устанавливает воскресенье и понедельник в выходные дни.
Если вы используете Excel 2007, пропустите этот шаг. Функция ЧИСТРАБДНИ в Excel 2007 всегда предполагает, что выходные дни — суббота и воскресенье.
4. Введите имя диапазона праздников.
Если вы создали имя диапазона праздников в приведенном выше разделе «Начало работы», введите его в конце, как показано ниже. Если у тебя нет праздников, вы можете покинуть запятую и Михолидайс. Если вы используете Excel 2007, вышеприведенный пример будет выглядеть следующим образом: = ЧИСТРАБДНИ (D53, E53, михолидайс).
ПероЕсли вы не хотите ссылаться на имя диапазона праздников, вы также можете ввести диапазон, например D35: E:39. Кроме того, вы можете ввести каждый праздник в формуле. Например, если праздничные дни – 1 января и 2 из 2016, введите их следующим образом: = ЧИСТРАБДНИ. Межд (D53, E53, 1, ). В Excel 2007 оно будет выглядеть следующим образом: = ЧИСТРАБДНИ (D53, E53, . 2016″>)
Чтобы вычислить затраченное время, можно вычесть один раз из другого. Сначала введите время начала в ячейке и время окончания в другой. Убедитесь в том, что все время, в том числе часы, минуты и пробелы, заполните до полудня или PM. Вот что нужно для этого сделать:
1. Введите время начала и время окончания.
В этом примере время начала находится в ячейке D80, а время окончания — в E80. Убедитесь, что вводите часы, минуты и пробелы перед символами AM и PM.
Выберите обе даты и нажмите клавиши CTRL + 1 (или
3. вычитание двух значений.
В другой ячейке вычитаете начальную ячейку из ячейки «время окончания».
4. Задайте формат ч.
Нажмите клавиши CTRL+1 (или
Чтобы вычислить время между двумя датами и временем, вы можете просто вычесть один из них. Однако вы должны применить форматирование к каждой ячейке, чтобы убедиться, что Excel возвращает нужный результат.
1. Введите два полных значения даты и времени.
В одной ячейке введите дату и время начала. В другой ячейке введите дату и время полного окончания. Каждая ячейка должна иметь месяц, день, год, час, минуту и пробел до полудня или PM.
Выберите обе ячейки, а затем нажмите клавиши CTRL + 1 (или
3. вычитание двух значений.
В другой ячейке вычитаете дату и время начала из даты и времени окончания. Результат, скорее всего, будет выглядеть как число и десятичное значение. Это будет исправлено на следующем этапе.
Примеры практического применения функций для работы с датами
Эти примитивные функции очень полезны при группировки данных по: годам, месяцам, дням недели и конкретным дням.
Допустим у нас имеется простой отчет по продажам:
Нам нужно быстро организовать данные для визуального анализа без использования сводных таблиц. Для этого приведем отчет в таблицу где можно удобно и быстро группировать данные по годам месяцам и дням недели:
Теперь у нас есть инструмент для работы с этим отчетом по продажам. Мы можем фильтровать и сегментировать данные по определенным критериям времени:
Кроме того, можно составить гистограмму для анализа самых продаваемых дней недели, понять на какой день недели приходится наибольшее количество продаж:
В таком виде очень удобно сегментировать отчеты по продажам за длительные, средние и короткие периоды времени.
Стоит сразу отметить что для того чтобы получить разницу между двумя датами нам не поможет ни одна из выше описанных функций. Для данной задачи следует воспользоваться специально предназначенной функцией РАЗНДАТ:
Тип значений в ячейках «дата» требует особого подхода при обработке данных. Поэтому следует использовать соответствующие данному типу функции в Excel.
Функция РАЗНДАТ – разность двух дат в днях, месяцах и годах
Предположим, вы работаете в пенсионном фонде и хотите определить трудовой стаж в количестве лет, дней, месяцев и так далее. Это можно сделать с помощью функции РАЗНДАТ.
Ее синтаксис элементарный.
РАЗНДАТ(начальная_дата; конечная_дата; способ_измерения)
Единственный из этих аргументов, который действительно может вызвать вопросы у неподготовленного читателя – это способ измерения. С его помощью мы задаем, в каких единицах будет измеряться разница между датами. Это может быть количество месяцев, лет или количество месяцев без учета лет. Еще один вариант – это количество дней без учета месяцев и лет.
Важно учесть, что в некоторых случаях эта функция может вернуть неправильное значение. Это бывает, когда день первой даты больше, чем день второй
Такая ситуация может быть, например, когда нужно рассчитать количество дней между двумя датами, первая из которых происходила в конце месяца, а другая – в начале следующего.
Пример №1. Подсчет количества лет между двумя датами
На примере выше, формула возвращает количество лет между двумя датами. Например, функция вернет значение “27” если вы захотите посчитать количество полных лет между двумя датами 19 июня 1989 года и 26 марта 2017 года. Система подсчитывает количество полных лет и игнорирует количество месяцев и дней между датами.
Разница дат в полных месяцах
Чтобы определить количество полных месяцев, которое прошло с одной даты до другой, необходимо воспользоваться такой же самой формулой, которая была приведена выше, только третий аргумент должен содержать аргумент m.
То есть, формула следующая.
=РАЗНДАТ(A2;B2;”m”)
Эта формула также может давать несколько неточные данные. Поэтому всегда нужно перепроверять значения самостоятельно.
Разница в днях без учета лет
Эта формула также может использоваться для определения количества дней между двумя датами, но при этом не учитывать количество лет, которое прошло между этими двумя временными точками. Эта возможность есть, но пользоваться ею настоятельно не рекомендуется, потому что искажений в этом случае может быть еще больше.
1
Эта формула вернет правильный результат только тогда, когда в компьютере показано правильное время. Конечно, в большинстве современных операционных системах дата и время определяется автоматически, но иногда случаются сбои. Поэтому перед тем, как подсчитывать разницу в днях без учета лет, нужно убедиться, что на компьютере установлена правильная дата и время. Особенно если электронная таблица пересылалась другому человеку.
Количество рабочих дней между двумя датами
Здесь ситуация чуть сложнее. Необходимо не учитывать субботы с воскресеньями и праздники. Для такого расчета лучше воспользоваться функцией ЧИСТРАБДНИ (NETWORKDAYS) из категории Дата и время. В качестве аргументов этой функции необходимо указать начальную и конечную даты и ячейки с датами выходных (государственных праздников, больничных дней, отпусков, отгулов и т.д.):
Примечание: Эта функция появилась в стандартном наборе функций Excel начиная с 2007 версии. В более древних версиях сначала необходимо подключить надстройку Пакета анализа. Для этого идем в меню Сервис — Надстройки (Tools — Add-Ins) и ставим галочку напротив Пакет анализа (Analisys Toolpak). После этого в Мастере функций в категории Дата и время появится необходимая нам функция ЧИСТРАБДНИ (NETWORKDAYS).
Сдвиг даты на заданное количество дней
Поскольку одни сутки в системе отсчета даты Excel принимаются за единицу (см.выше), то для вычисления даты, отстоящей от заданной на, допустим, 20 дней, достаточно прибавить к дате это число.
Сдвиг даты на заданное количество рабочих дней
Эту операцию осуществляет функция РАБДЕНЬ (WORKDAY). Она позволяет вычислить дату, отстоящую вперед или назад относительно начальной даты на нужное количество рабочих дней (с учетом выходных суббот и воскресений и государственных праздинков). Использование этой функции полностью аналогично применению функции ЧИСТРАБДНИ(NETWORKDAYS) описанной выше.
Вычисление дня недели
Вас не в понедельник родили? Нет? Уверены? Можно легко проверить при помощи функции ДЕНЬНЕД (WEEKDAY) из категории Дата и время.
Первый аргумент этой функции — ячейка с датой, второй — тип отсчета дней недели (самый удобный — 2).
Вычисление временных интервалов
Поскольку время в Excel, как было сказано выше, такое же число, как дата, но только дробная его часть, то с временем также возможны любые математические операции, как и с датой — сложение, вычитание и т.д.
Нюанс здесь только один. Если при сложении нескольких временных интервалов сумма получилась больше 24 часов, то Excel обнулит ее и начнет суммировать опять с нуля. Чтобы этого не происходило, нужно применить к итоговой ячейке формат 37:30:55:
Как автоматически заполнять даты в Excel
Если вам нужно заполнить большую часть таблицы датами, вы можете использовать специальную функцию под названием автозаполнение. Давайте рассмотрим некоторые частные случаи его использования.
Предположим, нам нужно составить список дат, каждая из которых на день больше предыдущего. В этом случае вам нужно использовать автозаполнение, как и любое другое значение. Сначала вам нужно указать начальную дату в ячейке, а затем, используя индикатор автозаполнения, переместить формулу вниз или вправо, в зависимости от порядка, в котором информация в таблице расположена в данном конкретном случае. Маркер автозаполнения представляет собой небольшой квадрат, который находится в правом нижнем углу ячейки, перетаскивая его, вы можете автоматически вводить огромный объем информации. Программа автоматически определяет, как правильно компилировать, и в большинстве случаев это оказывается правильным. На этом скриншоте мы собрали дни в одну колонку. Результат следующий.
Но возможности автозаполнения на этом не заканчиваются. Вы также можете делать это в будние дни, месяцы или годы. Есть два способа сделать это.
- Используйте стандартный индикатор автозаполнения, как описано выше. После того, как программа завершит все автоматически, вам нужно щелкнуть значок с параметрами автозаполнения и выбрать соответствующий метод.
- Перетащите маркер автозаполнения правой кнопкой мыши, и когда вы отпустите его, автоматически появится меню настроек. Выбирайте нужный вам способ и все будет хорошо.
Вы также можете автоматически вставлять каждые N дней. Для этого вам нужно добавить значение в ячейку, щелкнуть правой кнопкой мыши маркер автозаполнения, удерживать его и перетащить туда, где должна заканчиваться числовая последовательность. Затем выберите параметр заполнения «Progression» и выберите значение шага.
Расчет кол-ва неполных рабочих дней между двумя датами
Также, к примеру, можно использовать эту же функцию для расчета неполных рабочих дней.
Допустим, у нас есть похожая таблица с данными:
Формула, для нашего случая, будет такой:
Для обозначения выходных дней, мы использовали «1010111».
- 0 — рабочий день
- 1 — неполный рабочий день
Первая цифра из этого числа — понедельник, последняя — воскресенье
Грубо говоря, «0000011» значит, что с понедельника по пятницу — рабочие дни, а суббота и воскресенье — нерабочие (выходные).
По той же логике, «1010111» означает, что только вторник и четверг являются рабочими, а остальные 5 дней — нерабочими.
Если вам нужно исключить какие-то дни из расчетов, можете исключать их таким образом.