Проблема с датой в rec.Source = "SELECT * FROM table1 WHERE date = #date1#" Хочу написать на VBA функцию, кот. бы отбирала данные по дате из таблицы:
'переменная DateVar задается программно через окно InputBox 'date1=format(DateVar, "dd/mm/yy")
Dim rec As Recordset Set rec = New Recordset rec.Source = "SELECT * FROM table1 WHERE date <= #" & date1 & "# " rec.ActiveConnection = CurrentProject.Connection rec.Open rec.MoveFirst
При выполнении этого программа выдает ошибку: Дата содержит синтаксическую ошибку в выражении запроса ‘date<=#26.06.2001#’ Так как сделать, чтобы код работал без ошибок? Заранее благодарен за ответ.
Guest 01.07.2001
Для задания критерия поиска удобнее пользоваться BuildCriteria (см Help) или придется самому приводить дату к американскому формату (типа Month(date1) & "/" & day(date1) & "/" & year(date1)
OleVal 02.07.2001
Спасибо за совет! Вот как я решил эту проблему:
Dim DateStr As String DateStr = Format(DateVar, "mm/dd/yy") DateStr = Replace(DateStr, ".", "/") Dim rec As Recordset Set rec = New Recordset rec.Source = _ "SELECT * FROM table1 WHERE date <= #" & DateStr & "#"