Период в ячейки excel

указать в ячейке начальную и конечную даты

Gold_Barsik

Дата: Понедельник, 21.05.2018, 19:22 |
Сообщение № 1

Группа: Проверенные

Ранг: Обитатель

Сообщений: 451


Репутация:

6

±

Замечаний:
0% ±


2003

1) Как указать в ячейке начальную и конечную даты при выделении диапазона? можно назвать её ПЕРИОД ДАТ. Т.е. ставим в ячейке знак =, выделяем нужный диапазон и в результате получаем начальную дату-конечную дату.
2) Что бы после из этой ячейки вычислялось количество дней, можно назвать их ДЛИНА ПЕРИОДА. т.е. ставим в ячейке знак =, выделяем нужную ячейку с диапазоном дат (ПЕРИОД ДАТ) и результате получаем число дней этого диапазона (ПЕРИОД ДАТ) и точное число (десятичное) месяцев этого (ПЕРИОД ДАТ) в другой ячейке.

Сообщение отредактировал Gold_BarsikПонедельник, 21.05.2018, 20:02

 

Ответить

_Boroda_

Дата: Понедельник, 21.05.2018, 21:40 |
Сообщение № 2

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

Засунул все это в один макрос
Это

ставим в ячейке знак =, выделяем нужный диапазон

делайте в столбце D
[vba]

Код

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim d_ As Range
    With Target
        If .Count > 1 Then Exit Sub
        If Left(.Formula, 1) <> «=» Then Exit Sub
        ar = Split(Mid(.Formula, 2), «:»)
        If UBound(ar) <> 1 Then Exit Sub
        Set d_ = Range(Range(ar(0)), Range(ar(1)))
        Application.EnableEvents = 0
        If .Column = 4 Then
            .Value = CDate(WorksheetFunction.Min(d_)) & «-» & CDate(WorksheetFunction.Max(d_))
            .Offset(, 2).Value = «дней: » & Round(WorksheetFunction.Max(d_) — WorksheetFunction.Min(d_) + 1, 0)
            .Offset(, 3).Value = «месяцев: » & Round((WorksheetFunction.Max(d_) — WorksheetFunction.Min(d_) + 1) / 30, 2)
        End If
        Application.EnableEvents = 1
    End With
End Sub

[/vba]

К сообщению приложен файл:

6948752.xls
(42.5 Kb)


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

Gold_Barsik

Дата: Понедельник, 21.05.2018, 21:51 |
Сообщение № 3

Группа: Проверенные

Ранг: Обитатель

Сообщений: 451


Репутация:

6

±

Замечаний:
0% ±


2003

Большое СПАСИБО! А формулой никак?

 

Ответить

_Boroda_

Дата: Понедельник, 21.05.2018, 21:57 |
Сообщение № 4

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

Не, к сожалению никак. Формула сама себя в ячейке менять не может


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

Nic70y

Дата: Понедельник, 21.05.2018, 21:59 |
Сообщение № 5

Группа: Друзья

Ранг: Экселист

Сообщений: 8136


Репутация:

1999

±

Замечаний:
0% ±


Excel 2010

Код

=ТЕКСТ(МИН(A16:A18);»ДД.ММ.ГГГГ»)&»-«&ТЕКСТ(МАКС(A16:A18);»ДД.ММ.ГГГГ»)

[vba]

Код

Function ПериодДат(S As Range)
    u_01 = WorksheetFunction.Min(S)
    u_02 = WorksheetFunction.Max(S)
    u_03 = Format(u_01, «dd.mm.yyyy»)
    u_04 = Format(u_02, «dd.mm.yyyy»)
    ПериодДат = u_03 & «-» & u_04
End Function

[/vba]
Вдруг правильно

К сообщению приложен файл:

3250245.xls
(40.5 Kb)


ЮMoney 41001841029809

 

Ответить

Gold_Barsik

Дата: Понедельник, 21.05.2018, 22:08 |
Сообщение № 6

Группа: Проверенные

Ранг: Обитатель

Сообщений: 451


Репутация:

6

±

Замечаний:
0% ±


2003

_Boroda_, а скажите почему в подсчётах выдаёт 75 дней, а по факту 74 дня?

 

Ответить

_Boroda_

Дата: Понедельник, 21.05.2018, 22:17 |
Сообщение № 7

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

Потому, что с 1.1.18 по 1.1.18 будет не ноль дней, а 1 день
Если нужно, чтобы было ноль дней, то в макросе в двух местах сотрите «+1»


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

Gold_Barsik

Дата: Понедельник, 21.05.2018, 22:25 |
Сообщение № 8

Группа: Проверенные

Ранг: Обитатель

Сообщений: 451


Репутация:

6

±

Замечаний:
0% ±


2003

Понятно. Не буду стирать.
Подскажите как изменить столбец ввода «делайте в столбце D», на W?

Сообщение отредактировал Gold_BarsikПонедельник, 21.05.2018, 22:26

 

Ответить

_Boroda_

Дата: Понедельник, 21.05.2018, 22:28 |
Сообщение № 9

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

Номер столбца W — 23-й. Следовательно в строке
[vba][/vba]нужно заменить 4 на 23


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

Gold_Barsik

Дата: Понедельник, 21.05.2018, 22:34 |
Сообщение № 10

Группа: Проверенные

Ранг: Обитатель

Сообщений: 451


Репутация:

6

±

Замечаний:
0% ±


2003

Догадывался, но сомневался. Спасибо!
Как в количестве месяцев сделать чтобы не округлял после запятой? или хотя бы до 4 знаков после.

Сообщение отредактировал Gold_BarsikПонедельник, 21.05.2018, 22:41

 

Ответить

_Boroda_

Дата: Понедельник, 21.05.2018, 22:52 |
Сообщение № 11

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

Догадывался, но сомневался

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


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

Gold_Barsik

Дата: Вторник, 22.05.2018, 01:08 |
Сообщение № 12

Группа: Проверенные

Ранг: Обитатель

Сообщений: 451


Репутация:

6

±

Замечаний:
0% ±


2003

Ваша правда!

 

Ответить

Содержание

  • Работа с функциями даты и времени
    • ДАТА
    • РАЗНДАТ
    • ТДАТА
    • СЕГОДНЯ
    • ВРЕМЯ
    • ДАТАЗНАЧ
    • ДЕНЬНЕД
    • НОМНЕДЕЛИ
    • ДОЛЯГОДА
  • Вопросы и ответы

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

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

Работа с функциями даты и времени

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

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

  1. Для введения формулы через Мастер функций выделите ячейку, где будет выводиться результат, а затем сделайте щелчок по кнопке «Вставить функцию». Расположена она слева от строки формул.
  2. Перемещение в Мастер функций в Microsoft Excel

  3. После этого происходит активация Мастера функций. Делаем клик по полю «Категория».
  4. Мастер функций в Microsoft Excel

  5. Из открывшегося списка выбираем пункт «Дата и время».
  6. Выбор категории функций в Microsoft Excel

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

Переход к аргументам функции в Microsoft Excel

Кроме того, Мастер функций можно активировать, выделив ячейку на листе и нажав комбинацию клавиш Shift+F3. Существует ещё возможность перехода во вкладку «Формулы», где на ленте в группе настроек инструментов «Библиотека функций» следует щелкнуть по кнопке «Вставить функцию».

Переход к вставке функции в Microsoft Excel

Имеется возможность перемещения к окну аргументов конкретной формулы из группы «Дата и время» без активации главного окна Мастера функций. Для этого выполняем перемещение во вкладку «Формулы». Щёлкаем по кнопке «Дата и время». Она размещена на ленте в группе инструментов «Библиотека функций». Активируется список доступных операторов в данной категории. Выбираем тот, который нужен для выполнения поставленной задачи. После этого происходит перемещение в окно аргументов.

Переход к формулам в Microsoft Excel

Урок: Мастер функций в Excel

ДАТА

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

Его аргументами являются «Год», «Месяц» и «День». Особенностью обработки данных является то, что функция работает только с временным отрезком не ранее 1900 года. Поэтому, если в качестве аргумента в поле «Год» задать, например, 1898 год, то оператор выведет в ячейку некорректное значение. Естественно, что в качестве аргументов «Месяц» и «День» выступают числа соответственно от 1 до 12 и от 1 до 31. В качестве аргументов могут выступать и ссылки на ячейки, где содержатся соответствующие данные.

Lumpics.ru

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

=ДАТА(Год;Месяц;День)

Функция ДАТА в Microsoft Excel

Близки к этой функции по значению операторы ГОД, МЕСЯЦ и ДЕНЬ. Они выводят в ячейку значение соответствующее своему названию и имеют единственный одноименный аргумент.

РАЗНДАТ

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

=РАЗНДАТ(нач_дата;кон_дата;единица)

Из контекста понятно, что в качестве аргументов «Начальная дата» и «Конечная дата» выступают даты, разницу между которыми нужно вычислить. А вот в качестве аргумента «Единица» выступает конкретная единица измерения этой разности:

  • Год (y);
  • Месяц (m);
  • День (d);
  • Разница в месяцах (YM);
  • Разница в днях без учета годов (YD);
  • Разница в днях без учета месяцев и годов (MD).

Функция РАЗНДАТ в Microsoft Excel

Урок: Количество дней между датами в Excel

ЧИСТРАБДНИ

В отличии от предыдущего оператора, формула ЧИСТРАБДНИ представлена в списке Мастера функций. Её задачей является подсчет количества рабочих дней между двумя датами, которые заданы как аргументы. Кроме того, имеется ещё один аргумент – «Праздники». Этот аргумент является необязательным. Он указывает количество праздничных дней за исследуемый период. Эти дни также вычитаются из общего расчета. Формула рассчитывает количество всех дней между двумя датами, кроме субботы, воскресенья и тех дней, которые указаны пользователем как праздничные. В качестве аргументов могут выступать, как непосредственно даты, так и ссылки на ячейки, в которых они содержатся.

Синтаксис выглядит таким образом:

=ЧИСТРАБДНИ(нач_дата;кон_дата;[праздники])

Аргументы функции ЧИСТОРАБДНИ в Microsoft Excel

ТДАТА

Оператор ТДАТА интересен тем, что не имеет аргументов. Он в ячейку выводит текущую дату и время, установленные на компьютере. Нужно отметить, что это значение не будет обновляться автоматически. Оно останется фиксированным на момент создания функции до момента её перерасчета. Для перерасчета достаточно выделить ячейку, содержащую функцию, установить курсор в строке формул и кликнуть по кнопке Enter на клавиатуре. Кроме того, периодический пересчет документа можно включить в его настройках. Синтаксис ТДАТА такой:

=ТДАТА()

Функция ТДАТА в Microsoft Excel

СЕГОДНЯ

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

=СЕГОДНЯ()

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

Эта функция, так же, как и предыдущая, для актуализации требует пересчета. Перерасчет выполняется точно таким же образом.

ВРЕМЯ

Основной задачей функции ВРЕМЯ является вывод в заданную ячейку указанного посредством аргументов времени. Аргументами этой функции являются часы, минуты и секунды. Они могут быть заданы, как в виде числовых значений, так и в виде ссылок, указывающих на ячейки, в которых хранятся эти значения. Эта функция очень похожа на оператор ДАТА, только в отличии от него выводит заданные показатели времени. Величина аргумента «Часы» может задаваться в диапазоне от 0 до 23, а аргументов минуты и секунды – от 0 до 59. Синтаксис такой:

=ВРЕМЯ(Часы;Минуты;Секунды)

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

Кроме того, близкими к этому оператору можно назвать отдельные функции ЧАС, МИНУТЫ и СЕКУНДЫ. Они выводят на экран величину соответствующего названию показателя времени, который задается единственным одноименным аргументом.

ДАТАЗНАЧ

Функция ДАТАЗНАЧ очень специфическая. Она предназначена не для людей, а для программы. Её задачей является преобразование записи даты в обычном виде в единое числовое выражение, доступное для вычислений в Excel. Единственным аргументом данной функции выступает дата как текст. Причем, как и в случае с аргументом ДАТА, корректно обрабатываются только значения после 1900 года. Синтаксис имеет такой вид:

=ДАТАЗНАЧ (дата_как_текст)

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

ДЕНЬНЕД

Задача оператора ДЕНЬНЕД – выводить в указанную ячейку значение дня недели для заданной даты. Но формула выводит не текстовое название дня, а его порядковый номер. Причем точка отсчета первого дня недели задается в поле «Тип». Так, если задать в этом поле значение «1», то первым днем недели будет считаться воскресенье, если «2» — понедельник и т.д. Но это не обязательный аргумент, в случае, если поле не заполнено, то считается, что отсчет идет от воскресенья. Вторым аргументом является собственно дата в числовом формате, порядковый номер дня которой нужно установить. Синтаксис выглядит так:

=ДЕНЬНЕД(Дата_в_числовом_формате;[Тип])

Функция ДЕНЬНЕД в Microsoft Excel

НОМНЕДЕЛИ

Предназначением оператора НОМНЕДЕЛИ является указание в заданной ячейке номера недели по вводной дате. Аргументами является собственно дата и тип возвращаемого значения. Если с первым аргументом все понятно, то второй требует дополнительного пояснения. Дело в том, что во многих странах Европы по стандартам ISO 8601 первой неделей года считается та неделя, на которую приходится первый четверг. Если вы хотите применить данную систему отсчета, то в поле типа нужно поставить цифру «2». Если же вам более по душе привычная система отсчета, где первой неделей года считается та, на которую приходится 1 января, то нужно поставить цифру «1» либо оставить поле незаполненным. Синтаксис у функции такой:

=НОМНЕДЕЛИ(дата;[тип])

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

ДОЛЯГОДА

Оператор ДОЛЯГОДА производит долевой расчет отрезка года, заключенного между двумя датами ко всему году. Аргументами данной функции являются эти две даты, являющиеся границами периода. Кроме того, у данной функции имеется необязательный аргумент «Базис». В нем указывается способ вычисления дня. По умолчанию, если никакое значение не задано, берется американский способ расчета. В большинстве случаев он как раз и подходит, так что чаще всего этот аргумент заполнять вообще не нужно. Синтаксис принимает такой вид:

=ДОЛЯГОДА(нач_дата;кон_дата;[базис])

Функция ДОЛЯГОДА в Microsoft Excel

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

Для работы с датами в Excel в разделе с функциями определена категория «Дата и время». Рассмотрим наиболее распространенные функции в этой категории.

Как Excel обрабатывает время

Программа Excel «воспринимает» дату и время как обычное число. Электронная таблица преобразует подобные данные, приравнивая сутки к единице. В результате значение времени представляет собой долю от единицы. К примеру, 12.00 – это 0,5.

Значение даты электронная таблица преобразует в число, равное количеству дней от 1 января 1900 года (так решили разработчики) до заданной даты. Например, при преобразовании даты 13.04.1987 получается число 31880. То есть от 1.01.1900 прошло 31 880 дней.

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



Пример функции ДАТА

Построение значение даты, составляя его из отдельных элементов-чисел.

Синтаксис: год; месяц, день.

Все аргументы обязательные. Их можно задать числами или ссылками на ячейки с соответствующими числовыми данными: для года – от 1900 до 9999; для месяца – от 1 до 12; для дня – от 1 до 31.

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

Пример использования функции:

ДАТА.

Зададим большее количество дней для июня:

Большее количество дней.

Примеры использования в качестве аргументов ссылок на ячейки:

Ссылки в аргументах.

Функция РАЗНДАТ в Excel

Возвращает разницу между двумя датами.

Аргументы:

  • начальная дата;
  • конечная дата;
  • код, обозначающий единицы подсчета (дни, месяцы, годы и др.).

Способы измерения интервалов между заданными датами:

  • для отображения результата в днях – «d»;
  • в месяцах – «m»;
  • в годах – «y»;
  • в месяцах без учета лет – «ym»;
  • в днях без учета месяцев и лет – «md»;
  • в днях без учета лет – «yd».

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

Примеры действия функции РАЗНДАТ:

РАЗНДАТ.

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

Функция ГОД в Excel

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

Пример использования функции ГОД:

ГОД.

Функция МЕСЯЦ в Excel: пример

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

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

МЕСЯЦ.

Примеры функций ДЕНЬ, ДЕНЬНЕД и НОМНЕДЕЛИ в Excel

Возвращает день как целое число (от 1 до 31) для заданной в числовом формате даты. Аргумент – дата дня, который нужно найти, в числовом формате.

ДЕНЬ.

Чтобы вернуть порядковый номер дня недели для указанной даты, можно применить функцию ДЕНЬНЕД:

ДЕНЬНЕД.

По умолчанию функция считает воскресенье первым днем недели.

Для отображения порядкового номера недели для указанной даты применяется функция НОМНЕДЕЛИ:

НОМНЕДЕЛИ.

Дата 24.05.2015 приходится на 22 неделю в году. Неделя начинается с воскресенья (по умолчанию).

С понедельника.

В качестве второго аргумента указана цифра 2. Поэтому формула считает, что неделя начинается с понедельника (второй день недели).

Скачать примеры функций для работы с датами

Для указания текущей даты используется функция СЕГОДНЯ (не имеет аргументов). Чтобы отобразить текущее время и дату, применяется функция ТДАТА ().

Видео

Как обычно, кому надо быстро — смотрим видео. Подробности и нюансы — в тексте ниже:

Как вводить даты и время в Excel

Если иметь ввиду российские региональные настройки, то Excel позволяет вводить дату очень разными способами — и понимает их все:

   «Классическая» форма

  3.10.2006

   Сокращенная форма

3.10.06

   С использованием дефисов

3-10-6

   С использованием дроби

   3/10/6

Внешний вид (отображение) даты в ячейке может быть очень разным (с годом или без, месяц числом или словом и т.д.) и задается через контекстное меню — правой кнопкой мыши по ячейке и далее Формат ячеек (Format Cells):

date1.png

Время вводится в ячейки с использованием двоеточия. Например

16:45

По желанию можно дополнительно уточнить количество секунд — вводя их также через двоеточие:

16:45:30

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

27.10.2012 16:45

Быстрый ввод дат и времени

Для ввода сегодняшней даты в текущую ячейку можно воспользоваться сочетанием клавиш Ctrl + Ж (или CTRL+SHIFT+4 если у вас другой системный язык по умолчанию).

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

date2.png

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

datepicker.jpg

Если нужно, чтобы в ячейке всегда была актуальная сегодняшняя дата — лучше воспользоваться функцией СЕГОДНЯ (TODAY):

date3.png

Как Excel на самом деле хранит и обрабатывает даты и время

Если выделить ячейку с датой и установить для нее Общий формат (правой кнопкой по ячейке Формат ячеек — вкладка ЧислоОбщий), то можно увидеть интересную картинку:

date4.png

То есть, с точки зрения Excel, 27.10.2012 15:42 = 41209,65417

На самом деле любую дату Excel хранит и обрабатывает именно так — как число с целой и дробной частью. Целая часть числа (41209) — это количество дней, прошедших с 1 января 1900 года (взято за точку отсчета) до текущей даты. А дробная часть (0,65417), соответственно, доля от суток (1сутки = 1,0)

Из всех этих фактов следуют два чисто практических вывода:

  • Во-первых, Excel не умеет работать (без дополнительных настроек) с датами ранее 1 января 1900 года. Но это мы переживем!  ;)
  • Во-вторых, с датами и временем в Excel возможно выполнять любые математические операции. Именно потому, что на самом деле они — числа! А вот это уже раскрывает перед пользователем массу возможностей.

Количество дней между двумя датами

Считается простым вычитанием — из конечной даты вычитаем начальную и переводим результат в Общий (General) числовой формат, чтобы показать разницу в днях:

date5.png

Количество рабочих дней между двумя датами

Здесь ситуация чуть сложнее. Необходимо не учитывать субботы с воскресеньями и праздники. Для такого расчета лучше воспользоваться функцией ЧИСТРАБДНИ (NETWORKDAYS) из категории Дата и время. В качестве аргументов этой функции необходимо указать начальную и конечную даты и ячейки с датами выходных (государственных праздников, больничных дней, отпусков, отгулов и т.д.):

date6.png

Примечание: Эта функция появилась в стандартном наборе функций Excel начиная с 2007 версии. В более древних версиях сначала необходимо подключить надстройку Пакета анализа. Для этого идем в меню Сервис — Надстройки (Tools — Add-Ins) и ставим галочку напротив Пакет анализа (Analisys Toolpak). После этого в Мастере функций в категории Дата и время появится необходимая нам функция ЧИСТРАБДНИ (NETWORKDAYS).

Количество полных лет, месяцев и дней между датами. Возраст в годах. Стаж.

Про то, как это правильно вычислять, лучше почитать тут.

Сдвиг даты на заданное количество дней

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

Сдвиг даты на заданное количество рабочих дней

Эту операцию осуществляет функция РАБДЕНЬ (WORKDAY). Она позволяет вычислить дату, отстоящую вперед или назад относительно начальной даты на нужное количество рабочих дней (с учетом выходных суббот и воскресений и государственных праздинков). Использование этой функции полностью аналогично применению функции ЧИСТРАБДНИ (NETWORKDAYS) описанной выше.

Вычисление дня недели

Вас не в понедельник родили? Нет? Уверены? Можно легко проверить при помощи функции ДЕНЬНЕД (WEEKDAY) из категории Дата и время.

date7.png

Первый аргумент этой функции — ячейка с датой, второй — тип отсчета дней недели (самый удобный — 2).  

Вычисление временных интервалов

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

Нюанс здесь только один. Если при сложении нескольких временных интервалов сумма получилась больше 24 часов, то Excel обнулит ее и начнет суммировать опять с нуля. Чтобы этого не происходило, нужно применить к итоговой ячейке формат 37:30:55:

date8.png

Ссылки по теме

  • Как вычислять возраст (стаж) в полных годах-месяцах-днях
  • Как сделать выпадающий календарь для быстрого ввода любой даты в любую ячейку.
  • Автоматическое добавление текущей даты в ячейку при вводе данных.
  • Как вычислить дату второго воскресенья февраля 2007 года и т.п.

Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше

С помощью функции ДАТА в Excel можно объединить три отдельных значения в дату.

Функция ДАТА возвращает порядковый номер определенной даты.

Синтаксис: ДАТА(год;месяц;день)

Аргументы функции ДАТА описаны ниже.

  • Год    — обязательный аргумент. Значение аргумента год может содержать от одной до четырех цифр. Excel интерпретирует аргумент год в соответствии с используемой системой дат, используемой на вашем компьютере. По умолчанию в Microsoft Excel для Windows используется система дат 1900, то есть первой датой считается 1 января 1900 г.

    Совет: Во избежание непредвиденных результатов используйте в качестве значения аргумента год четыре цифры. Например, значение «07» может интерпретироваться как «1907» или «2007». Четырехзначное обозначение года предотвращает возникновение путаницы.

    • Если аргумент год находится в диапазоне от 0 (нуль) до 1899 (включительно), Excel для вычисления года прибавляет это значение к числу 1900. Например, функция ДАТА(108;1;2) возвращает 2 января 2008 (1900+108) года.

    • Если аргумент год находится в диапазоне от 1900 до 9999 (включительно), Excel использует это значение как год. Например, функция ДАТА(2008;1;2) возвращает 2 января 2008 года.

    • Если значение аргумента год меньше 0 или больше 9999, Excel возвращает значение ошибки #ЧИСЛО!.

  • Месяц    — обязательный аргумент. Положительное или отрицательное целое число в диапазоне от 1 (январь) до 12 (декабрь), представляющее месяц года.

    • Если значение аргумента месяц больше 12, аргумент месяц добавляет число месяцев к первому месяцу указанного года. Например, функция ДАТА(2008;14;2) возвращает число, соответствующее 2 февраля 2009 года.

    • Если значение аргумента месяц меньше 1, аргумент месяц вычитает значение этого числа месяцев, увеличенное на 1, из первого месяца указанного года. Например, функция ДАТА(2008;-3;2) возвращает число, соответствующее 2 сентября 2007 года.

  • День    — обязательный аргумент. Положительное или отрицательное целое число в диапазоне от 1 до 31, представляющее день месяца.

    • Если значение аргумента день больше числа дней в указанном месяце, аргумент день добавляет это число дней к первому дню месяца. Например, функция ДАТА(2008;1;35) возвращает число, соответствующее 4 февраля 2008 года.

    • Если значение аргумента день меньше 1, аргумент день вычитает значение этого числа дней, увеличенное на 1, из первого дня указанного месяца. Например, функция ДАТА(2008;1;-15) возвращает число, соответствующее 16 декабря 2007 года.

Примечание: В Excel даты хранятся в виде порядковых номеров, что позволяет использовать их в вычислениях. Дате 1 января 1900 года соответствует номер 1, а 1 января 2008 года — 39448, так как интервал между этими датами составляет 39 447 дней. Чтобы вывести правильную дату, нужно изменить формат ячейки.

Функция ДАТА, пример 1

Синтаксис: ДАТА(год;месяц;день)

Например, =ДАТА(C2;A2;B2) объединяет значение года из ячейки C2, месяца из ячейки A2 и дня из ячейки B2 и помещает их в одну ячейку в виде даты. В примере ниже показан результат в ячейке D2.

Функция ДАТА, пример 2

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

  1. Щелкните правой кнопкой мыши ячейки, которые вы хотите изменить. На компьютере Mac щелкните ячейки, удерживая нажатой клавишу CTRL.

  2. На вкладке Главная щелкните Формат > Формат ячеек или нажмите клавиши CTRL+1 (COMMAND+1 на компьютере Mac).

  3. 3. Выберите нужный язык (местоположение) и формат даты.

  4. Дополнительные сведения о форматировании дат см. в статье Пользовательское форматирование даты.

    Форматирование ячейки как даты

Функцию ДАТА можно использовать для формирования даты на основе даты в другой ячейке. Например, с помощью функций ГОД, МЕСЯЦ и ДЕНЬ можно создать дату годовщины, основанную на другой ячейке. Допустим, что сотрудник начал работать 01.10.2016. С помощью функции ДАТА можно рассчитать пятилетний юбилей его работы.

Расчет даты на основе другой даты

  1. Функция ДАТА формирует дату.

    =ДАТА(ГОД(C2)+5;МЕСЯЦ(C2);ДЕНЬ(C2))

  2. Функция ГОД получает значение «2012» из ячейки C2.

  3. К этому значению прибавляется пять лет («+5»), после чего в ячейке D2 выводится «2017».

  4. Функция МЕСЯЦ получает значение «3» из ячейки C2 и добавляет его в ячейку D2 в качестве значения месяца.

  5. Функция ДЕНЬ получает значение «14» из ячейки C2 и добавляет его в ячейку D2 в качестве значения дня.

Если открыть файл, полученный из другой программы, Excel попытается распознать даты в данных. Но иногда это не удается сделать. Возможно, это связано с тем, что числа не похожи на обычные даты или отформатированы как текст. В таком случае их можно преобразовать в даты с помощью функции ДАТА. Например, на приведенном ниже рисунке ячейка C2 содержит дату, которая имеет формат ГГГГММДД. Она также отформатирована как текст. Для ее преобразования в дату функция ДАТА используется в сочетании с функциями ЛЕВСИМВ, ПСТР и ПРАВСИМВ.

Преобразование текстовых строк и чисел в даты

  1. Функция ДАТА формирует дату.

    =ДАТА(ЛЕВСИМВ(C2;4);ПСТР(C2;5;2);ПРАВСИМВ(C2;2))

  2. Функция ЛЕВСИМВ получает первые 4 знака слева в ячейке C2. При этом значение «2014» становится годом преобразованной даты в ячейке D2.

  3. Функция ПСТР ссылается на ячейку C2. Она получает 2 знака справа от 5-го знака. При этом значение «03» становится месяцем преобразованной даты в ячейке D2. «0» не включается в результат из-за формата Дата, заданного для ячейки D2.

  4. Функция ПРАВСИМВ получает первые 2 знака в ячейке C2 от правого края и добавляет «14» в ячейку D2 в качестве значения дня.

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

В приведенном ниже примере ячейка A5 содержит дату, которую нужно увеличить или уменьшить на 7 дней (значение в ячейке C5).

Увеличение или уменьшение даты на указанное количество дней

См. также

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

Вставка текущих даты и времени в ячейку

Автоматическое заполнение ячеек листа данными

Функция ГОД

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

Функция ДЕНЬ

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

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

Функции даты и времени (справка)

Все функции Excel (по категориям)

Все функции Excel (по алфавиту)

Нужна дополнительная помощь?

Понравилась статья? Поделить с друзьями:
  • Период в формате excel
  • Период в днях excel
  • Период в excel это
  • Перечислить типы данных вводимых в ячейку excel
  • Перечислить типы данных в ячейке таблицы excel