Операции вычисления даты и времени

Переменные типа Date хранят 8-байтовые числа с плавающей точкой. Они представляют даты с 01.01.100 по 31.12.9999 (целая часть) и времени суток с 0:00:00 до 23:59:59 (дробная часть). Язык Visual Basic позволяет выполнять следующие операции над данными типа Date (табл. 4.10):

· вычисление текущих даты и времени;

· установку системных даты и времени;

· вычисление года, месяца, дня месяца, дня недели, часа, минут по заданной дате и времени;

· вычисление чисел, изображающих дату и время.

Таблица 4.9

Важнейшие строковые операторы и функции языка Vasual Basic

Вид оператора Назначение Пример
A+B или A&B, Объединение строк А и В А="ли", В="са" А+В="лиса"
Lcase(A) Ucase(A) Перевод букв в нижний и верхний регистр A="FoXлИс" Lcase(A)="foxлис" Ucase(A)="FOXЛИС"
Trim(A), Ltrim(A), Rtrim(A) Удаление "концевых" пробелов слева и справа, только слева и только справа, соответственно А=" П ", Trim(A)="П" Ltrim(A)="П ", Rtrim(A)=" П"
Len(A) Вычисление длины строки А="лиса", Len(A)=4
Space(n) Создание строки из n пробелов Space(3)=" "
String(n,"символ") String(n, код) Создание строки из n заданных символов String(3,"A")="AAA" String (3,65)="AAA"
Left(A,n) Right(A,n) Вычисление левого и правого фрагмента строки А длиной n А="лиса", тогда Left(A,2)="ли" Right(A,2)="са"
Mid(A,n[,m])=B Вставка в строку А строки В или m ее первых символов. Вставку начинать с символа № n. А="моко", В="лоч", Mid(A,3)=B даст А="молочко" Mid(A,3,2)=B даст А="молоко"
B=Mid(A,n[,m]) Вычисление фрагмента строки А длиной m, начинающегося с символа № n A="кровля" В=Mid(A,2,3) дает В="ров"
Instr([n,]A,B[,comp]) Вычисление позиции первого символа фрагмента строки А, совпадающего со строкой В. Сравнение начинать с символа № n. comp=1 – сравнение с учетом регистра, comp=1 – регистр игнорируется А="молоко", В="Ло" Instr(2,A,B,0) = 0 Instr(2,A,B,1) = 3
Lset A=B Rset A=B Копирование строки В в более длинную строку А с добав-лением пробелов справа или слева соответственно Dim A as string[5], B="лом", тогда Lset A=B и Rset A =B дадут соответственно А="лом " и А=" лом"
где А,В – строковые переменные, n,m– целые переменные, скобки [] выделяют необязательный параметр

 


Таблица 4.10

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

Вид оператора (функции) Назначение
D=#d ms y# D=#ms d, y# Присвоение значения данным типа Date, например, D=#16 Feb 2002# D=#Feb 16
Date=D D=Date Установка и вычисление системной даты
Time=T T=Time Установка и вычисление системного времени
Now Вычисление текущей даты и времени
Year(D) Вычисление года по дате
Month(D) Вычисление месяца по дате
Day(D) Вычисление дня по дате
Weekday(D[,fwd]) Вычисление дня недели
Hour(T) Вычисление часа
Minute(T) Вычисление минут
DataValue(SD) Вычисление даты по ее символьному эквиваленту
TimeValue(T) Вычисление времени по его символьному эквиваленту
DateSerial(y,m,d) Вычисление даты по году, месяцу и дню
TimeSerial(h,m,s) Вычисление времени по часу, минутам, секундам
DateAdd(i,n,dn) Вычисление даты, отличающейся от начальной даты d на целое число n периодов типа i
DateDiff(i,dn,de[,fwd][,fwy]) Вычисление числа временных интервалов типа i, прошедших между датами dn и de.
Где D,Т – данные типа Date (D – целая часть, T – дробная часть), SD – символьный эквивалент даты, y,m,d – целые числа, соответствующие году, месяцу, дну месяца, h,m,s – то же, соответствующие часу, минутам и секундам, ms – символьный эквивалент месяца (например, February и т.д.) n – целое число прошедших периодов, dn,de – начальная и конечная даты, i – тип периода ("yyyy" – год, "q" – квартал, "m" – месяц, "y" – день года и т.д.), fwd – первый день недели (vbSunday, vbMonday, …vbSatarday, vbUseSystem) fwy – первая неделя года (vbUseSystem, vbFirstJan1, vbFirstFourDays, vbFirstFullWeek)

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