Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > диапазон дат


Автор: shankara 21.3.2009, 21:42
Скажите, корректно ли задавать диапазон дат вот таким образом: If Date >= "01.04.2009" and  Date <= "15.04.2009"   Then...

Автор: Данкинг 21.3.2009, 22:00
Если Date - переменная типа DATE, то корректно. Только лучше всё же переименуй её как-нибудь.

Автор: shankara 21.3.2009, 22:23
Date у меня не переменная, а функция в Аccess. Я написал это выражение "If Date >= "01.04.2009" And Date <= "31.12.2009" Then" в Access, но оно срабатывает на сегодняшнюю дату - 21.03.2009. 

Как это сделать правильно?

Автор: Akina 21.3.2009, 22:35
Не использовать зарезервированные слова в качестве имён функций и переменных. Сменить Date на, скажем, MyDate

Автор: shankara 22.3.2009, 11:21
То есть сделать так? : 

Dim MyDate1 As Date

у меня тогда MyDate1 возвращает 0:00:00





Автор: Данкинг 22.3.2009, 11:52
Цитата(shankara @  22.3.2009,  11:21 Найти цитируемый пост)
у меня тогда MyDate1 возвращает 0:00:00

 smile  smile 
Код

Private Sub Form_Load()
Dim mydate As Date
mydate = Date
MsgBox (mydate)
End Sub


Автор: TEH3OP 4.4.2009, 16:10
"01.04.2009" - это не дата, это строка. Литерал даты задётся внутри ## и имеет американский формат: 'M/D/YYYY hh:nn:ss AM|PM' или 'M/D/YYYY'.
Есть ещё функция DateSerial({YEAR}, {MONTH}, {DAY}) и TimeSerial({HOUR}, {MIN}, {SEC}), как в Access::SQL так и в VB/VBA.
Про использование ключевых слов тебе уже рассказали.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)