powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / как в VBA текст в дату преобразовать??
22 сообщений из 22, страница 1 из 1
как в VBA текст в дату преобразовать??
    #32429667
Simon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
всем привет!

т.е собственно делаю селект и надо в условии where написать поле dt (тип дата) больше введенного юзером текста (например, '14.01.2004')

как мне это сделать?
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32429690
Фотография funddd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где введенного?

можно сделать просто так:

where dt>[Введите дату]

только, если там юзер фигню будет писать, то надо подумать о приведении фигни в формат даты
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32429696
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32429873
Simon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
все понял надо делать так
Код: plaintext
1.
2.
3.
4.
5.
Dim q As Date
q = Now
strSQL =  "SELECT * "  _
  &  "FROM Table "  _
  &  "WHERE (((Table.Quanty)=#"  & Format(q,  "mm/dd/yy hh:mm:ss" ) &  "#));" 
 


а что значит #
???

cорри за ламерские вопросы, просто, это все что надо сделать, а глобально изучать ms access из-за этого вломы
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32429890
Kelme
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторчто значит # ?
Признак даты это
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32429984
Simon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
thanks
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32430140
CtrlAlt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно еще DateValue попробовать
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32430314
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Между прочим, вопрос был про преобразование текста в дату, а ответ, приведенный самим автором вопроса, - про преобразование даты в текст.
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32430953
Simon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
точно ложанулся
кто-нибудь может подсказать что не так???

пользователеь вводит на одной форме условия поиска (дату в формате dd.mm.yyyy), при нажатии кнопки поиск формируется условие, которое передается в другую форму

при запуске акцес выдает ошибку "синтаксическая ошибка и выдает текст из этого участка кода".

вот код сам код


Код: plaintext
1.
2.
3.
4.
  
If Not IsNull(Me![Родился_с]) Then
       stLinkCriteria = stLinkCriteria &  "AND ([Дата рождения] >= #Format('" & Me![Родился_с] & "','dd.mm.yyyy')#)" 
End If
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32430966
Sfagnum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
найди пять отличий

=#" & Format(q, "mm/dd/yy hh:mm:ss") & "#));"
=#Format('" & Me![Родился_с] & "','dd.mm.yyyy')#)"

Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32431039
Simon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
отличий дофига
в упор не въезжаю в преобразование типов

в моем случа Me![Родился_с] обычный текст вида dd.mm.yyyy, который надо преобразовать к виду, чтобы акцес воспринимал его как дату, т.е в каком-нибудь оракле я написал бы так

Код: plaintext
field >= to_date(текстовая переменная, 'dd.mm.yyyy')


как вот это сделать в msaccess???
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32431066
Фотография funddd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"AND ([Дата рождения] >= #" & Format(Me![Родился_с],'dd.mm.yyyy') & "#)"

обрати внимание на расставление кавычек.

ты подставляешь Аксу что-то в знаках ##, а это что-то предварительно форматируешь как mm/dd/yyyy.
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32431067
Sfagnum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дело в том что Format - это ф-я, но она Аксессная, а для выполнения запроса тебе надо вставить результат это ф-ии, а не её тело, т.к. в Jet SQL нет такой ф-ии и по этому её в твоём случае следует записать следующим образом:
Код: plaintext
>=# " & Format(Me![Родился_с],'dd.mm.yyyy') & " #

Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32431128
magic'2k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Интересно...
а почему все формат используют... а разве нельзя так написать?

strSQL = "Select * From Таблица Where [Дата_рожд] =CDate('" & Me.date_of_birth.Value & "')"
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32431198
Фотография funddd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А разве в JetSQL есть CDate?
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32431266
Simon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а может у меня что-то с региональными настройками??? (указан формат даты dd.MM.yyyy разделитель точка
или я как-то неправильно создал таблицу???

из приведенного кода работает только последний

Код: plaintext
1.
2.
3.
4.
5.
     
>=# " & Format("  22 . 01 . 1981  ", " mm/dd/yyyy ") & " #
>=# " & Format("  22 . 01 . 1981  ", " dd/mm/yyyy ") & " #
>=# " & ("  22 / 01 / 1981  ") & " #)  < ---- работает
 


на все остальные выдает ошибку
"Дата содержит синтаксическую ошибку в выражении запроса '[Дата рождения]>=#22.01.1981#'"

псли писать так
Код: plaintext
>=# " & Format(Me![Родился_с],'dd.mm.yyyy') & " #

то выдает ошибку на одинарные ковычки
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32431279
Sfagnum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробуй >=#" & Format("22.01.1981", "dd\/mm\/yyyy") & "#


Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32431301
Simon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
выдает ошибку
"Дата содержит синтаксическую ошибку в выражении запроса '[Дата рождения]>=#22V01V1981#'"

блин, не реплэйсом же все точки на слэш менять:)
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32431358
Sfagnum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
покажика выражение целиком, и как/откуда запускаешь запрос

Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32431435
Simon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
всем спасибо
помог такой вариат

Dim q as Date

q = Me![Родился_с]
stLinkCriteria = stLinkCriteria & "([Дата рождения] >= CDate(""" & CStr(q) & """)) AND "
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32431459
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вывод:
Используйте параметризированные запросы, тогда не будет заморочек с преобразованием типов.
...
Рейтинг: 0 / 0
как в VBA текст в дату преобразовать??
    #32431468
Sfagnum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну ты мозги то пудрил... я ж для WHERE писал а не для критерия...

Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
22 сообщений из 22, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / как в VBA текст в дату преобразовать??
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]