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

Preview:

Citation preview

Тема:Тема:

ВыходВыход

Преподаватель Косарь О.В.Преподаватель Косарь О.В.

КонстантыКонстанты типа типа DateDateЗначения типа даты/времени заключаются между парой символов #. Например:

#January 1, 2008# #1:00:00##Jan 1 2008# #12/30/2007 5:20 РМ ##1-Jan-08##1 Jan 2008#

Если используется формат записи дат, принятый в США, то он записывается в виде: месяц/день/год.

# 5 / 1 / 2008 # - 1 мая 2008

месяц день год

ВыходВыход

Это функции, которые позволяют определить текущую дату и время на вашем компьютере.

Функции текущей системной Функции текущей системной даты и временидаты и времени

ФункциФункцияя Возвращаемое значениеВозвращаемое значение

NowNow Текущее значение даты и Текущее значение даты и временивремени

DateDate Часть значения, Часть значения, представляющая датупредставляющая дату

TimeTime Часть значения, Часть значения, представляющая времяпредставляющая времяIf Time>#1:00 PM# Then ' Эти операции выполняются только в том случае,

' когда уже больше часа дня

End If

Например:

ВыходВыход

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

ФункцияФункция РезультатРезультат

DateValueDateValue(строка_с_датой)(строка_с_датой)Возвращает Возвращает значение значение толькотолько датыдаты

TimeValueTimeValue(строка_с_временем)(строка_с_временем)

Возвращает Возвращает значение значение толькотолько временивремениПример: Dim dt As Date

dt = #4/4/2005 2:00:00 AM#

If DateValue(dt)<#5/14/2005# Then

' Необходимые операции

End If ВыходВыход

ПримерПример

Sub Дата () Dim dTime1 As Date Dim dTime2 As Date Dim dTime3 As Date dTime1 = #2:30:45#+TimeValue(“00:15:00”)

dTime2 = Now + TimeValue(“00:25:00”) dTime3 = Time + TimeValue(“00:00:10”)End Sub

ВыходВыход

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

ФункцияФункция РезультатРезультат Year(Year(датадата)) Возвращает Возвращает годгод

Month(Month(датадата)) Возвращает Возвращает месяцмесяц

Day(Day(датадата)) Возвращает Возвращает деньдень

Hour(Hour(времявремя)) Возвращает Возвращает часычасы

Minute(Minute(времявремя)) Возвращает Возвращает минутыминуты

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

ВыходВыход

УпражненУпражнениеиеИспользуя рассмотренные функции, вывести на экран с

помо-щью MsgBox текущее системное время в формате часы:минуты.

ВыходВыход

Решение:Решение:

Sub Время() MsgBox " Сейчас " & Hour(Time) & _

" : " & Minute(Time), , _"Текущее время"

End Sub

ВыходВыход

Получение информации о дате Получение информации о дате и времении времениСуществует функция, которая позволяет определить, например, на какой день недели приходится заданная дата.Формат:DatePart(интервал, дата,[первый_день_недели,

первая_неделя_года])

интервал – это строковое значение, определяющее интересующий интервал

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

первый_день_недели – определяет, какой день следует считать первым днем недели

первая_неделя_года - определяет, какую неделю следует считать первой в году

ВыходВыход

Значения аргумента интервал:

Значение аргументаЗначение аргумента Задаваемый Задаваемый интервалинтервал

yyyyyyyy ГодГод qq КварталКвартал mm МесяцМесяц yy День годаДень года dd ДеньДень месяцамесяца ww День неделиДень недели wwww НеделяНеделя hh ЧасЧас nn МинутаМинута ss СекундаСекундаНапример: NKvartal = DatePart( "q",

#9/20/2008#)В результате NKvartal = 3, так как 20 сентября приходится на третий квартал.

ВыходВыход

‘Нахождение текущего дня:Debug.Print Day(Date)Debug.Print DatePart(“d”, Date)

‘Порядковый номер дня в году:Debug.Print DatePart(“y”, Date)

ВыходВыход

Значения аргумента первый_день_недели:Имя Имя константыконстанты

Числовое Числовое значениезначение

ОписаниеОписание

vbUseSystemvbUseSystem 00 Используются системные Используются системные настройкинастройки

vbSundayvbSunday 11 Воскресенье(по умолчанию)Воскресенье(по умолчанию)

vbMondayvbMonday 22 ПонедельникПонедельник

. . .. . . . . .. . . . . .. . .

vbSaturdayvbSaturday 77 СубботаСуббота

Значения аргумента первая_неделя_года:Имя Имя константыконстанты

Числовое Числовое значениезначение

ОписаниеОписание

vbUseSystemvbUseSystem 00 Используются системные Используются системные настройкинастройки

vbFirstJan1vbFirstJan1 11 Неделя, на которую попадает Неделя, на которую попадает 1 января ( по умолчанию)1 января ( по умолчанию)

vbFirstFourDaysvbFirstFourDays 22 Неделя, на которую попадает Неделя, на которую попадает 4 дня нового года4 дня нового года

vbFirstFullWeekvbFirstFullWeek 33 Первая полная неделя годаПервая полная неделя годаВыходВыход

ОтображениеОтображение величинвеличин в удобном в удобном видевиде

Отображение даты в различных форматах производится при помощи функции Format

Format(expression[, format[, firstdayofweek[, firstweekofyear]]])

expression – дата, которую необходимо отформатировать format – заданный форматfirstdayofweek, firstweekofyear – константы.

Формат:

ВыходВыход

НапримерНапример

Format(#11/15/1999 1:15:00 PM#, _

"ddd, dd mmmm, yyyy")Результат:Пн, 15 ноября, 1999

Debug.Print Format(#12/15/1999 1:15:00 PM#, _

"hh:mm:ss, mmm dd,yyyy")Результат:13:15:00, дек 15, 1999

ВыходВыход

Recommended