Разность дат в excel

Подсчет между датами — Формулы

= РАЗНДАТ (начало; конец; «г»)&»годы»; & РАЗНДАТ(начало; конец; «гм») & «месяцы»; & РАЗНДАТ(начало; конец; «мд») & «дни»

Чтобы рассчитать и отобразить время между датами в днях, месяцах и годах, вы можете использовать формулу, основанную на функции РАЗНДАТ.

В показанном примере формула в D5:

= РАЗНДАТ(B5; C5; «г») & «годы»; & РАЗНДАТ(B5; C5; «гм») & «месяцы»; & РАЗНДАТ(B5; C5; «мд») & «дни»

Где даты начала указаны в столбце B, а даты окончания — в столбце C.

Функция РАЗНДАТ предназначена для вычисления разницы между датами в годах, месяцах и днях. Доступны несколько вариантов (например, время в месяцах, время в месяцах без учета дней и лет и т. д.), И они устанавливаются аргументом «единица» в функции.

В показанном примере мы вычисляем отдельно годы, месяцы и дни, затем «склеиваем» результаты вместе с конкатенацией. Чтобы получить целые годы, мы используем:

РАЗНДАТ(B5; C5; «г») и «годы»

Чтобы получить целые месяцы, мы используем:

РАЗНДАТ(B5; C5; «гм») & «месяцы»

И мы вычисляем дни с:

РАЗНДАТ(B5; C5; «мд») & «дни»

Остальная часть формулы — это просто необходимый текст, объединенный с оператором конкатенации (&).

Чтобы предотвратить вывод дней, месяцев или лет с нулевыми значениями, вы можете обернуть каждую функцию РАЗНДАТ внутри ЕСЛИ, как показано здесь (строки, добавленные для удобочитаемости):

=ЕСЛИ(РАЗНДАТ(B5; C5; «г»); РАЗНДАТ (B5; C5; «г») & «годы»; «») ЕСЛИ(РАЗНДАТ(B5; C5; «гм»); РАЗНДАТ(B5; C5; «гм») & «месяцы»; «»)

ЕСЛИ(РАЗНДАТ(B5; C5; «мд»); РАЗНДАТ(B5; C5; «мд») & «дни»; «»)

Для предотвращения появления дополнительных запятых в конечном результате запятые заменяются пробелами. Использование исходной формулы РАЗНДАТ как «логического теста» внутри ЕСЛИ работает, потому что ЕСЛИ обрабатывает любой ненулевой результат как истинный.

Подсчитайте дни недели между датами

= СУММПРОИЗВ(- (ДЕНЬНЕД(СТРОКА(ДВССЫЛ (дата1 & «:» & дата2))) = дни))

Чтобы подсчитать количество понедельников, пятниц, воскресений и т. п. между двумя датами, вы можете использовать формулу массива, которая использует несколько функций: СУММПРОИЗВ, ДЕНЬНЕД, СТРОКА и ДВССЫЛ.

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

= СУММПРОИЗВ(- (ДЕНЬНЕД(СТРОКА(ДВССЫЛ(B5 & «:» & C5))) = D5))

В основном эта формула использует функцию ДЕНЬНЕД, чтобы проверить количество дат, чтобы увидеть, попадают ли они в заданный день недели и функцию СУММПРОИЗВ, чтобы подсчитать общее количество.

Когда дана дата, ДЕНЬНЕД просто возвращает число от 1 до 7, соответствующее конкретному дню недели. С настройками по умолчанию: 1 = воскресенье и 7 = суббота. Итак, 2 = понедельник, 6 = пятница и так далее.

Трюк этой формулы заключается в понимании того, что даты в Excel — это только серийные номера, которые начинаются 1 января 1900 года. Например, 1 января 2016 года — это серийный номер 42370, а 8 января — 42377. Даты в Excel выглядят только как даты, когда применяется формат числа даты.

Итак, возникает вопрос — как вы можете построить массив дат, который вы можете использовать в функции ДЕНЬНЕД, чтобы узнать соответствующие дни недели?

Ответ: использовать СТРОКА с ДВССЫЛ следующим образом:

СТРОКА(ДВССЫЛ(дата1 & «:» & дата2))

ДВССЫЛ позволяет связанным датам «42370: 42377» интерпретироваться как номера строк. Затем функция СТРОКА возвращает массив вроде этого:

{42370; 42371; 42372; 42373; 42374; 42375; 42376; 42377}

Функция ДЕНЬНЕД оценивает эти числа как даты и возвращает этот массив:

{6; 7; 1; 2; 3; 4; 5; 6}

Который тестируется на заданный день недели (6 в данном случае, начиная с D6). Как только результаты теста преобразуются в 1 и 0 с двойным дефисами, этот массив обрабатывается СУММПРОИЗВ:

{1; 0; 0; 0; 0; 0; 0; 1}

Который возвращает 2.

Подсчитывать праздники между двумя датами

= СУММПРОИЗВ((праздники> = начало) * (праздники =F5)*(B5:B13 = F5)

Это возвращает массив значений ИСТИНА/ЛОЖЬ, например:

{ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ИСТИНА; ИСТИНА; ИСТИНА; ИСТИНА; ИСТИНА }

Второе выражение проверяет каждую дату отпуска, чтобы увидеть, меньше или равна конечной дате в F6:

(B5: B13 = F5) * (диап

О правилах расчета

Чтобы не перечитывать эти документы, можно воспользоваться письмом-разъяснением от Фонда социального страхования РФ от 30 октября 2012 г. N 15-03-09/12-3065П:

Согласно п. 21 Правил подсчета и подтверждения страхового стажа для определения размеров пособий по временной нетрудоспособности, по беременности и родам, утвержденных Приказом Минздравсоцразвития России от 06.02.2007 N 91, исчисление периодов работы (службы, деятельности) производится в календарном порядке из расчета полных месяцев (30 дней) и полного года (12 месяцев). При этом каждые 30 дней указанных периодов переводятся в полные месяцы, а каждые 12 месяцев этих периодов переводятся в полные годы.

При расчете страхового стажа перевод каждых 30 дней указанных периодов в полные месяцы, а каждых 12 месяцев этих периодов в полные годы предусматривается только для неполных календарных месяцев и неполных календарных лет.

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

Ниже приведен пример расчета на основе этих документов.

Основная формула Excel расчета для возраста в годах.

Как вы обычно определяете, сколько вам лет? Просто вычитая дату рождения из текущей. Этот традиционный подход, знакомый нам еще с детства,  может также использоваться в Excel.

Если предположить, что день рождения (ДР) записан в ячейке B2, то вычислить возраст в годах можно следующим образом:

=(СЕГОДНЯ()-B2)/365

=(TODAY()-B2)/365

Первая часть выражения (СЕГОДНЯ()-B2) возвращает разницу между текущей и датой рождения в днях. А затем вы делите это на 365, чтобы получить количество лет.

Формула очевидна и легко запоминаема, однако есть небольшая проблема. В большинстве случаев мы получаем число, как показано на скриншоте ниже. Что, согласитесь, несколько непривычно и не слишком удобно.

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

Функция ЦЕЛОЕ округляет в меньшую сторону до ближайшего целого.

Округляет количество прожитых лет по стандартным правилам в зависимости от значения дробной части (более 0,5 — в большую сторону).

Округляет в меньшую сторону.

Отбрасывает дробную часть, оставляя только целое.

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

Недостатки:  использование этого выражения в Экселе дает довольно точные результаты, но не безупречные. Деление на среднее число дней в году в большинстве случаев работает нормально, но иногда все же показывает неверный возраст. Например, если кто-то родился 29 февраля, а сейчас 28 февраля, программа сделает человека на один день старше.

В качестве альтернативы вы можете использовать в знаменателе 365,25 вместо 365, поскольку каждый четвертый год состоит из 366 дней. Однако и этот подход не идеален. Например, если вы рассчитываете возраст ребенка, который еще не прожил високосный год, деление на 365,25 дает неправильный результат.

В целом, вычитание ДР из текущей даты прекрасно работает в обычной жизни, но не является идеальным подходом в Excel. Ведь мы здесь ожидаем получить точный ответ.

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

Функция ДАТА — как использовать формулу ДАТА в Excel

Функция ДАТА возвращает число, представляющее дату определенного дня, месяца и года. Функция дата используется, как правило, для построения даты из составных частей, таких как день, месяц и год. Минимальное и максимальное значение дат, которое может принять Excel — 1 января 1900 года и 31 декабря 9999 года соответственно.

Синтаксис функции ДАТА

Формула ДАТА состоит из трех частей:

ДАТА(год; месяц; день)

Год – первый аргумент, который указывает год конструируемой даты. Максимальное значение, которое может быть указано – 9999.

Месяц – второй аргумент, который указывает, какой месяц будет фигурировать в нашей дате

Обратите внимание, что значения месяца не ограничены рамками от 1 до 12, а могут принимать любые значения, даже отрицательные. К примеру, если вы напишите формулу =ДАТА(2013;13;1), Excel вернет дату, которая отстоит от 1-го января 2013 года на 13 месяцев, т.е

1/1/2014.

День – часть функции, которая задает день необходимой даты. Так же, как и аргумент Месяц, может принимать любые значения (не только от 1 до 31). К примеру, если вы введете формулу =ДАТА(2013;01;35), Excel вернет дату, которая отстоит от 1-го января 2013 года на 35 дней, т.е. 4/02/2013. Точно так же вы можете использовать отрицательные значения, чтобы создавать прошедшие даты.

Давайте рассмотрим пример использования функции ДАТА. Предположим, что у нас имеется год, месяц и день, находящиеся в трех различных полях. Необходимо объединить все три значения для создания даты. Как показано выше, вводим формулу =ДАТА(A2;B2;C2). Результатомм в данном случае будет дата 19-го июня 2013 года.

Формат даты в Excel

Каждый раз, когда вы презентуете данные содержащие даты, убедитесь, что они отформатированы должным образом. Существует целый ряд форматов дат, которые используется каждым отделом, компанией или страной по-разному. Лично я предпочитаю формат ДД-MMM-ГГГГ, который исключает двусмысленности.

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

Возможные ошибки формул ДАТА

Функция дата может вернуть следующие ошибки:

Ошибка #ЧИСЛО! формулы ДАТА выдается, когда введенная дата выходит за границы допустимых значений (с 0/1/1900 по 31/12/9999). К примеру, если вы хотели ввести год 2013, но по ошибке ввели 20013, скажем =ДАТА(20013;6;19), Excel вернет ошибку.

Ошибка #ИМЯ! формулы ДАТА возвращается, когда один из аргументов введен не корректно (ввод текста вместо числового значения). К примеру, вы ввели «июнь» как аргумент месяц, вместо 6 (порядковый номер месяца июнь) и ввели следующую формулу =ДАТА(2013; июнь; 19). В этом случае Excel вернет ошибку #ИМЯ!

Сколько вам будет лет в определенный год?

Эта формула полезна в ситуациях, когда полная дата для расчета не определена, и вы знаете только год.

Допустим, вы работаете с медицинской базой данных, и ваша цель – выяснить, сколько лет пациенту на момент последнего полного медицинского обследования.

Если предположить, что ДР указан в столбце B, начиная со строки 2, а год последнего медицинского осмотра находится в столбце C, то расчет выглядит следующим образом:

Поскольку точный срок медицинского осмотра не определен, вы используете функцию ДАТА с произвольным аргументом дня и месяца, например, DATА(C3; 1; 1).

Функция ДАТА извлекает номер года из ячейки С2, создает полную дату, используя введенные вами номера месяца и дня (в этом примере 1 января), и передает ее в РАЗНДАТ. В результате вы получаете сумму прожитых пациентом лет по состоянию на 1 января определенного года.

Как отнимать либо прибавлять время

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

Добавить: 

Ячейки + TIME (часы, минуты, секунды)

Вычесть:

Ячейка – TIME (часы, минуты, секунды)

Внутри A2 указывается время, которое изменится

А сейчас разберем пример со временем. Наша задача – провемти следующие математические операции: ко времени внутри A2 прибавить 2 часа, 30 мин. и 15 сек. Вот, что мы делаем:

= А2 + TIME (2, 30, 15)

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

= А2 – TIME (2, 30, -15)

Таким образом, с помощью незамысловатых действий нам удалось ко времени внутри А2 приплюсовать 2 часа и 30 мин, а вычесть 15 сек. 

Более того, можно указать время, которое вы хотите изменить в определенных ячейках и ввести эти ячейки в вашей формуле:

= TIME А2 ($ C $ 2, $ D $ 2, $ E $ 2)

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

Инструкция

  1. Если вам потребовалось вычислить определенный интервал времени в программе Excel, не спишите применять сложные математические формулы. Большинство подсчетов можно произвести при помощи простейших математических действий, таких как сложение и вычитание. Главное установить нужный формат ячеек.
  2. Для начала вам нужно выделить группу ячеек, в которой будут расположены временные значения. Кликните по выделенной группе или одной ячейке правой клавишей мыши и в открывшемся меню нажмите на команду «Формат ячеек».
  3. Будет запущенно новое диалоговое окно, в нем нужно перейти на вкладку «Число». В левой части этого окна укажите пункт «Время», в правой части окна появятся настройки данного формата. Функция «Формат ячеек»

Выберите подходящий вид временного результата и нажмите кнопку ОК.

После присвоения ячейкам временного формата, введите в нужные ячейки значения время в формате XX:XX или XX:XX:XX. Теперь выберите ячейку для вывода результата, в поле для ввода формулы впишите знак «Равно» и кликните по ячейке с конечным значением. Теперь впишите знак «минус» и нажмите на ячейку с начальным значением. Нажмите ввод.
Пример: если вам нужно вычислить интервал времени от 11:20:20 до 13:30:00, эти данные должны быть вписаны в ячейки А1 и В1 соответственно, а в ячейке с результатом (например, С1) должна быть формула: =В1-А1. Если формат ячеек указан верно, то должен быть выведен результат 2:9:40. Вычисление интервала времени

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

Для того, чтобы вычислить сумму всех полученных результатов воспользуйтесь стандартной функцией сложения. Укажите ячейку, в которой должен быть выведен общий результат, и выберите команду Fx, в загрузившемся окне укажите опцию СУММ. Обозначьте все ячейки, результат из которых нужно подсчитать. Нажмите клавишу Enter, в ячейке с итоговым значением должна быть формула: =СУММ(С1:С5), если вы выбрали ячейки от С1 до С5. Обратите внимание, что всем этим ячейкам должен быть присвоен временной формат.

8 способов как сравнить две таблицы в Excel

Добрый день!

Эта статья посвящена решению такого вопроса, как сравнить две таблицы в Excel, ну или, по крайней мере, два столбца. Да, работать с таблицами удобно и хорошо, но вот когда нужно их сравнение, визуально это сделать достаточно затруднительно. Быть может таблицу до десятка или двух, вы и сможете визуально отсортировать, но вот когда они будут превышать тысячи, тут уже вам будет необходимо дополнительные инструменты анализа.

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

Рассмотрим несколько вариантов и возможностей для сравнения таблиц в Excel:

Работа с датами в Excel. Устранение типовых ошибок

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

Что такое даты для Excel?

Дата и Время — это числа для Excel. Целая часть — номер дня, а все что идет после запятой — время. Если перевести в разные форматы, получим следующее:

То есть 12.07.2016 12:50:30 для Excel значение — 42563,5350694,

Где 42563 — это порядковый номер дня с 1 января 1900 года, а часть после запятой — это время.

С датами можно производить вычисления. Например, вычитать или складывать даты.

Даты нужны для группировки ежедневных данных в недельные, месячные и годовые отчеты. Пример группировок различных рекламных каналов по дате:

Перевод разных написаний дат

Разные системы в выгрузках выдают даты по-разному, например: 12.07.2016 12-07-16 16-07-12 и так далее. Иногда месяца пишут текстом. Для того, чтобы привести даты к одному формату мы используем функцию ДАТА:

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

Дата определяется как текст

Проблемы с датами начинаются, когда мы импортируем данные из других источников. При этом, даты могут выглядеть нормально, но при этом являться текстом. С ними нельзя проводить вычисления, группировки в сводных таблицах, сортировать. Есть 2 решения, которые позволяют сделать это автоматически: 1. Получение значения даты; 2. Умножение текстового значения на единицу.

Получение значения даты

С помощью формулы ЗНАЧ мы выводим текстовое значение даты, потом его форматируем как Дату:

Умножение текстового значения на единицу

Принцип аналогичный предыдущему, только мы текстовое значение умножаем на единицу и после этого форматируем как дату:

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

Очистка дат от некорректных символов

Чтобы привести к нужному стандарту, часть дат можно очистить с помощью функции Найти и Заменить. Например, поменять слэши (“/”) на точки:

То же самое можно сделать формулой ПОДСТАВИТЬ

Итак, мы разобрали основные варианты решения проблем с датами. Конечно, способов гораздо больше. И подобные преобразования удобнее делать через Power Query, который очень хорошо понимает и преобразовывает даты, но об этом в следующей статье.

Как посчитать сроки окончания действия договора в Excel

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

С помощью функции РАЗНДАТ определим, сколько дней прошло с момента заключения трудового договора. В новом столбце для ячейки С2 используем формулу: =РАЗНДАТ(B2;СЕГОДНЯ();”d”) и протянем ее на весь столбец ниже.

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

Сначала мы определяем количество дней во году по дате (365 или 366) по формуле ЕСЛИ(ОСТАТ(ГОД(B2);4);365;366), а после вычитаем, чтобы узнать сколько осталось -C2.

Для удобства можно добавить еще одну колонку, в которой с помощью условий указать замечание для продления договора, если осталось меньше 10 дней до его окончания. Для ячейки E2 используем формулу:

10;”Действует”;ЕСЛИ(D2

В данной формуле используется функция ЕСЛИ с несколькими условиями. Если до конца срока больше 10-ти суток тогда формула возвращает значение «Действует», а если меньше 10-то тогда одно из условий:

  1. Если меньше 10-ти суток, но больше чем 0 – значение «Заканчивается».
  2. Если меньше чем 0, тогда «Просрочен».

Рассчитать разницу во времени в Excel

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

Просто рассмотрите пример данных, как показано ниже,

Итак, как уже говорилось, если мы просто попытаемся вычесть «Время окончания» из «Время начала», вы столкнетесь с двумя проблемами и посмотрим, что это.

Вы можете видеть, что к этому результату добавлено «AM» или «PM», чего мы не ожидаем. Вторая проблема — это показывает ошибки хеша. Поскольку мы выполнили прямое вычитание, в некоторых случаях результат может быть отрицательным, и поскольку время не должно быть отрицательным, Excel отображает его как ошибки хеширования.

Мы можем решить первую проблему, изменив формат чисел, выполнив следующие простые шаги

  • Выберите ячейки, которые имеют результат (общее количество часов в нашем случае) и нажмите ‘CTRL + 1’, чтобы открыть диалоговое окно форматирования ячеек.
  • Нажмите на «Custom» и в поле «type» введите «h: mm» и нажмите «Ok».

Таким образом, вы можете избавиться от первой проблемы. Это несколько удовлетворительно, но даже если это не полное решение, которое мы ищем. Нам по-прежнему необходимо устранить ошибки хэширования в рассчитанных полных часах. Чтобы решить вторую проблему, вам нужно изменить формулу, которую вы использовали на первом шаге (Время окончания — Время начала, т.е. «E14-E13»). Выберите строку «Всего часов» и нажмите «F2», чтобы изменить формулу. Сделайте формулу следующим образом

E14-E13 + (E13> E14)

Теперь вместо нажатия клавиши Enter просто нажмите «CTRL + Enter», чтобы результат был применен ко всем выделенным ячейкам за один снимок. Таким образом, мы можем избежать изменения формулы для каждой ячейки.

Мы все знаем, что 24-часовая система используется Excel. Основная сложность, используемая здесь для решения хеш-ошибок, — это добавление логической операции. Тем самым мы преодолели отрицательный результат, поскольку «ИСТИНА» обрабатывается как «1», а «ЛОЖЬ» — как «0». Наконец, разница во времени не показывает отрицательные значения, иначе больше нет ошибок хеширования.

Это простой, удобный и совершенный способ подсчета разницы во времени в Microsoft Excel.

Пример 1

1. Чтобы выяснить, сколько проработал в компании тот или иной служащий, нужно из текущей даты вычесть дату поступления его на работу. Если в рабочей таблице содержатся даты приема на работу, в нее целесообразно добавить сегодняшнее число. (Самый простой способ введения текущей даты – с помощью комбинации клавиш CTRL SHIFT; ).

2. Активизируйте ячейку, в которую будет заноситься трудовой стаж данного служащего.

3. Теперь из текущей даты нужно вычесть дату приема на работу. В рассматриваемом примере сначала можно попробовать воспользоваться формулой =$В$2-C5

Обратите внимание на результат! Получилось такое большое число, потому что формула вычисляет количество дней (а не лет) работы на предприятии

4. Разделив результаты на 365, получим ответ в годах. В нашем случае формула должна иметь вид =($В$2-C5)/365. Теперь легко заметить, что первый сотрудник проработал на предприятии более 22 лет.

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

6. В качестве последнего шага по приведению данных в порядок может понадобиться сократить количество десятичных разрядов в дробных частях чисел или даже полностью убрать десятичные разряды. Выделив числа в столбце D, щелкните на кнопке Уменьшить разрядность на панели инструментов столько раз, сколько разрядов нужно сократить. При этом сокращается количество десятичных знаков, отображаемых на экране, но не записанных в памяти компьютера, где эти числа хранятся.

Метод 3: функция ЧИСТРАБДНИ для определения количества рабочих дней

Третий описываемый метод позволяет вычислить количество дней с дополнительным условием – исключением из него нерабочих (выходных и праздничных) дней.

В данном методе используется функция ЧИСТРАБДНИ со следующим синтаксисом: =ЧИСТРАБДНИ(нач_дата;кон_дата;).

Первые два аргумента аналогичны функции РАЗНДАТ. Последний аргумент является опциональным, то есть функция будет работать и без его указания. Однако именно он позволяет учесть в критериях вычисления нерабочие праздничные дни, так как по умолчанию из общего количества уберутся только субботы и воскресенья.

Приступаем к вычислениям:

  1. Так как описываемая функция присутствует в списке Мастера функций, воспользуемся им для большей наглядности: встаем на ячейку, куда будем выводить результат и щелкаем по кнопке “Вставить функцию” (fx), расположенной слева от строки формул.
  2. В открывшемся окне Мастера функций:
    • выбираем категорию “Полный алфавитный перечень”;
    • находим и кликаем в списке операторов по строке “ЧИСТРАБДНИ”;
    • нажимаем ОК.
  3. Перед нами появится окно аргументов функции. Здесь можно ввести адреса ячеек вручную или, находясь в поле для заполнения значений аргумента, кликнуть по нужной ячейке на листе. Выбрав начальную и конечную дату, а также указав праздничный день (адрес ячейки), нажимаем ОК.
  4. Предположим, в этот раз мы заранее не задали формат итоговой ячейки как “Общий”. Тогда мы получим результат, отображающийся в виде даты.
  5. Следовательно, необходимо снова проверить формат по алгоритму, описанному выше и изменить его на “Общий”.

Расчет разности дат

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

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

  1. Для начала выделяем целевой диапазон ячеек, воспользовавшись зажатой левой кнопкой мыши.
  2. Щелкаем по выделенной области правой кнопкой мыши и в открывшемся контекстном меню выбираем команду “Формат ячеек“. Аналогичного результата можно добиться, используя комбинацию клавиш Ctrl+1.
  3. Перед нами окно настроек формата ячеек:
    • по умолчанию мы должны оказаться во вкладке “Число” (если это не так, переключаемся в нее);
    • в списке “Числовые форматы” находим позицию “Дата” и кликаем на нее;
    • в поле “Тип” выбираем нужный образец представления данных, в соответствии с которым они будут отображаться на листе;
    • нажимаем OK.
  4. Теперь все значения, вводимые в ячейки выделенной области будут восприниматься программой как данные в формате “Дата“.

33 ответа

Преобразовать даты в милисекунды прошедшие с 1970 года, вычесть, и преобразовать назад.

А вообще есть встроенная функция

Или на VBA ее нет?

Lida_K, Не надо никакого VBA ведь всё решается очень просто :

Dmitrii, Это называется старость – не радость, а правильный вариант формулы, конечно же должен выглядеть так :

=РАЗНДАТ(A1;A2;”Y”)&” лет, “&РАЗНДАТ(A1;A2;”M”)-РАЗНДАТ(A1;A2;”Y”)*12&” месяцев, “&РАЗНДАТ(A1;A2;”MD”) &” дней”

Кстати, ни в Excel 2000, ни в Excel 2003 функции РАЗНДАТ() нет в списках мастера функций, хотя в справке обеих версий описание этиой функции есть. Причём, кажется мне, что это не единственный такой случай.

А, а я думал пишите свой возрастник – есть такие жаба скрипты, которые вычисляют “разндат” между введеной и текущей и сообщают, типа: “Нам уже 1 год, 3 месяца, 11 дней”. На родительских форумах такое повсеместно распространено.

Чтобы учесть всю календарные девиации надо использовать календарь.

Эта формула, естественно, будет возвращать текст, если сие нежелательно, то просто используйте =A2-A1 не забыв установить формат ячейки с формулой как :мм или :мм:сс (если секунды всё-таки могут быть важны)

Не понял, что значит предварительно суммировать все начальные и конечные даты, если нужно как раз вычитание дат, а не их сумма. Суммировать нужно уже полученные результаты после вычетания.

Я скачал две проги (одна бесплатная “Расчет стажа 1.41”, другая shareware “Расчетчик стажа 6.1.1.0”), которые самостоятельно считают стаж по исходным парам дат.

Исходя из возможностей этих прог, ищу возможность автоматизировать процесс расчета стажа в MS Office Excel.

Сказано же в писании, предварительно, т.е. допустим в ячейках “A1:10” находятся даты рождения, а в ячейках “B1:B10” даты упокоения, в таком случае

=РАЗНДАТ(СУММ(A1:A10);СУММ(B1:B10);”Y”) =РАЗНДАТ(СУММ(A1:A10);СУММ(B1:B10);”YM”) =РАЗНДАТ(СУММ(A1:A10);СУММ(B1:B10);”MD”)

Вы получите данные – довольно близкие к общему возврасту (стажу)

Меня смущает понятие “довольно близкие”! Не уж то батюшка Билл не предусмотрел возможность использования его продукта (MS Office Excel) сотрудниками “Human Resource Manager”.

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

Как я уже указывал, я скачал две проги (одна бесплатная “Расчет стажа 1.41”, другая shareware “Расчетчик стажа 6.1.1.0”), которые самостоятельно считают стаж по исходным парам дат. Парадокс: я получил ЧЕТЫРЕ! разных результата – два результата мне дали указанные программы, один результат Excel и ещё один я просчитал на старой доброй бумаге.

Сравнение 2 столбцов на предмет совпадения

Чтобы сравнить между собой два столбца, являются ли они одинаковыми или нет, необходимо воспользоваться условным форматированием. Последовательность действий в целом такая же, как описано выше. Предположим, нам необходимо выполнить такие операции со следующей таблицей.

4

Каждой колонке нужно дать правильное имя сперва. С помощью него нам будет легче понять, какие диапазоны ячеек сравниваются между собой. 

Сама последовательность действий следующая:

  1. Переходим на вкладку «Формулы». Там нужно найти кнопку «Присвоит имя». Она находится в самом верху панели инструментов непосредственно под заголовком самой вкладки.
  2. Откроется окно, в котором нам нужно задать имя для каждого из диапазонов. Допустим, нам нужно назвать первый диапазон «Таблица 1».
  3. После этого выбираем диапазон, который нам нужно так назвать. Для этого нажимаем на кнопку, расположенную справа от поля, подписанного как «Диапазон», выделить нужный набор ячеек и нажать на кнопку «ОК».
  4. Действия со вторым списком аналогичны. Единственное исключение – нужно дать ему другое имя. Ну и естественно, задать правильные адреса этого диапазона. 

Найти его вовсе несложно. После того, как мы выделим подходящий набор ячеек, слева от строки формул нужно нажать на поле, показанное на скриншоте. После этого вводим имя и нажимаем на кнопку «Ввод».

5

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

  1. Выделяем нужный диапазон. После этого создаем правило форматирования «Использовать формулу…».

  2. После этого в соответствующем поле вводится сама формула, а также задается формат ячеек, для которых эта формула оказывается истинной.

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

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

8

Нами была применена функция СЧЕТЕСЛИ, которая осуществляет проверку списка на предмет соответствия определенному критерию, после чего выдает значение «ИСТИНА» или «ЛОЖЬ». Если была возвращена «ИСТИНА», то соответствующие ячейки окрашиваются в цвета, заданные пользователем до использования условного форматирования.

Проверка будет осуществляться поочередно. И использоваться эта формула может и во всех других случаях, не только для сравнения двух дат между собой. Например, если есть два прайса, где нужно сравнить цены между собой (определить, какие отличаются, какие больше по сравнению с аналогичными позициями другого прайса), то также можно использовать эту формулу в условном форматировании. 

Оцените статью
Рейтинг автора
5
Материал подготовил
Илья Коршунов
Наш эксперт
Написано статей
134
Добавить комментарий