Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Popov_A_A_Kurs_kompyuternoy_podgotovki_Excel.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
4.36 Mб
Скачать

4.10. Функции обработки дат

ДАТА(год;месяц;день) – возвращает дату из отдельных ее компонент, полученных, возможно, в результате вычислений. Пример: ДАТА(98;10;03)=03.10.98

СЕГОДНЯ() – возвращает текущую системную дату компьютера.

ДЕНЬНЕД(дата;начало отсчета дней в неделе) – возвращает номер дня недели из даты. Параметр начало отсчета задает номер первого дня в неделе и может принимать значения:

1 - нумерация дней от 1 (Воскресенье) до 7 (Суббота),

2 - нумерация от 1 (Понедельник) до 7 (Воскресенье),

3 - нумерация от 0 (Понедельник) до 6 (Воскресенье).

Для нас, конечно, удобно значение 2.

Пример: ДЕНЬНЕД(B8;2), ДЕНЬНЕД("8.5.2001";2) =2 (вторник).

ГОД(дата) – возвращает год даты в форме числа. Пример: ГОД("10.01.99") =1999.

МЕСЯЦ(дата) – возвращает номер месяца даты в форме числа. Пример: МЕСЯЦ("10.01.99") =1.

НОМНЕДЕЛИ(дата;1) – возвращает номер недели с начала года, на которую приходится заданная дата.

Пример: НОМНЕДЕЛИ("13.8.99";1) =33-я неделя.

ДЕНЬ(дата) – возвращает день даты в форме числа. Примеры: ДЕНЬ("10.01.99") =10.

Найти число первого дня месяца в дате, содержащейся в клетке А1 (для 25.01.99 будет получено)

1-ДЕНЬ(A1)+1 =1.01.99.

ДАТАЗНАЧ(текст) – преобразует текстовую форму даты в числовую.

Пример: ДАТАЗНАЧ("24.12.97")=336518 или 24.12.97

– одна и та же дата может быть отображена в числовом формате и в формате даты.

РАБДЕНЬ(начальная дата;число дней[;праздники])

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

Пример: РАБДЕНЬ("01.Сен.98"; 80; "07.Ноя.98")

– функция вычисляет дату, отстоящую на 80 рабочих дней от 1 сентября 1998г. с учетом праздника 7 ноября.

В число рабочих дней функция включает и день начальной даты, так РАБДЕНЬ("01.Сен.99";1) = 01.Сен.99".

ЧИСТРАБДНИ(начальная дата;конечная дата[;праздники]) – используется для вычисления количества рабочих дней в диапазоне от начальной до конечной даты.

Пример: ЧИСТРАБДНИ("01.03.98";"12.06.98";"01.05.98")

– функция выдает число рабочих дней от 1 марта 1998г. до 12 июня 1998г.с учетом праздника 1 мая.

Функция возвращает число рабочих дней, включая начальную и конечную даты. Если это одна и та же дата, результат – единица.

ЧИСТРАБДНИ("01.09.99";"01.09.99") =1.

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

=ЧИСТРАБДНИ("1.5.98";ДАТАМЕС("1.5.98";1);{"1.5.98";"2.5.98"})

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

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

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

Примеры: КОНМЕСЯЦА("18.09.97";5)=28.02.98, КОНМЕСЯЦА("18.09.97";-5)=30.04.97.

 ДАТАМЕС(начальная дата; число месяцев) – возвращает в числовом виде дату, отстоящую на указанное число месяцев от начальной даты. Функция используется для вычисления даты вступления в силу договора или даты платежа, которая приходится на конец месяца. Параметр число месяцев может быть отрицательным. В этом случае отсчет ведется назад.

Примеры: ДАТАМЕС("18.09.97";-5) = 35538,

Чтобы представить дату в привычном виде используйте формат Дата

ДАТАМЕС("18.09.97";-5) = 18.04.97, ДАТАМЕС("18.09.97";5) = 18.02.98.

Если дня с таким числом в новом месяце нет, возвращается последний день этого месяца

ДАТАМЕС("30.01.97";1) = 28.02.97.

Здесь поскольку феврале нет 30-го числа, функция возвращает последний существующий день февраля.

Дата, отстоящая от сегодняшней на 8 месяцев ДАТАМЕС(СЕГОДНЯ();8).

ТДАТА() – возвращает текущую системную дату и время. Пример. ТДАТА() =2.12.99 15:06.

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

=ЕСЛИ(ТЕКСТ(B1;"ДД.ММ")=ТЕКСТ(Е4;"ДД.ММ");"Сегодня день рождения";"").

Здесь используется функция преобразования даты в текстовую форму с включением только дня и месяца (ТЕКСТ(…; "ДД.ММ")). Положим, В1=10.16.80, а Е4=10.16.99. Тогда наша функция проделает следующие вычисления

=ЕСЛИ(ТЕКСТ("10.16.1980";"ДД.ММ")=ТЕКСТ("10.16.1999";"ДД.ММ");"Сегодня день рождения";"")

или =ЕСЛИ("10.16"="10.16;"Сегодня день рождения";"").

Здесь результатом явится выражение "Сегодня день рождения".

Пример. Установить количество дней, прошедших с начала года. Здесь следует от текущей даты (клетка В1) отнять последнюю дату (т.е. 31 декабря) предыдущего года. Для этого из текущей даты выделяется текущий год, из которого отнимается 1 год (ГОД(В1)-1). Далее результат превращается в текст в формате “0000” (например, “1998”) и присоединяется к последнему дню года “31.12”. Полученный текст снова превращается в формат даты (31.12.1998) и вычитается из текущей даты.

=B1-ДАТАЗНАЧ("31.12."&ТЕКСТ(ГОД(B1)-1;"0000")).

Положим, В1=25.6.1999. Тогда (выполним последовательные преобразования данных)

=25.6.1999-ДАТАЗНАЧ("31.12."&ТЕКСТ(ГОД(25.6.1999)-1;"0000")),

=25.6.1999-ДАТАЗНАЧ("31.12."&ТЕКСТ(1998;"0000")),

=25.6.1999-ДАТАЗНАЧ("31.12.1998"),

=25.6.1999-31.12.1998=176 дней.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]