|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
08.09.2009, 14:22 | #1 |
Пользователь
Регистрация: 03.09.2009
Сообщений: 12
|
выборка по дате
доброго времени суток
подскажите как правильно написать фильтр чтоб из таблицы можно было выбрать записи определной даты. через VBA |
10.09.2009, 18:33 | #2 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравствуйте vaga.
"написать фильтр" - конечно же можно, но чем Вас не устраивает фильтр в контекстном меню таблиц БД MS Access. Евгений. |
11.09.2009, 01:32 | #3 |
Пользователь
Регистрация: 03.09.2009
Сообщений: 12
|
не, у меня все управление БД осуществляется через VBA. мне так удобнее
я как не пытался указать дату все время получаю либо ошибку "не соответствует тип", либо просто ничего не выбирается. как правильно выглядит фильтр по дате? |
12.09.2009, 20:01 | #4 |
Форумчанин
Регистрация: 26.04.2008
Сообщений: 487
|
Если хотите VBA использовать, то лучше функцией. Рекордсетом, например.
Покажите, что Вы писАли? |
13.09.2009, 18:08 | #5 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравствуйте vaga.
Вы очевидно ошиблись "управление БД осуществляется через VBA", без участия интерфейса (формы) не получится. Скорее всего используются формы, возможно "Табличного" вида. Фильтр к полю формата Data набора записей как и условие отбора по полю Data источника записей (запроса), должен быть заключен в решетки. select * from Table where Field1 = #1/2/2009# у MS Access существует проблема с отображением формата даты, запросы с условиями: #1/13/2009# и #13/1/2009# будут отображать 13 января без возмущений. И это наводит на мысль о возможности шибки #1/12/2009# - 1 декабря или 12 января? Решается проблема текстовым форматом, в источнике записей - запросе, создается поле отображающее дату в формате "yyyymmdd", MS Access позволяет помещать в тело запроса встроенные функции VBA: select *, Format(Field1, "yyyymmdd") as F1 from Table и по этому полю осуществляйте фильтрацию или выборку: ...where F1 = '20090112' - день ...where F1 Like '200901' & '*' - месяц ...where F1 Like '2009' & '*' - год Удачи Вам. Евгений. |
13.09.2009, 23:58 | #6 | |
Пользователь
Регистрация: 03.09.2009
Сообщений: 12
|
Цитата:
я пробовал ставить решетки. какой эффект от этого был не помню, но не получалось. попробую еще раз что интересно. мне надоело мучится решил сделать одну вешь: объявил переменную типа "дата", задал ей текущую дату (=Date) и сделал выборку по этой переменной. я подумал что акцесс сам себя же обмануть не может. я его недооценил . . . оказывается может. вообшем тоже ничего не получилось ладно попробую еще раз учитывая ваши советы. надеюсь они мне помогут. спасибо! |
|
17.09.2009, 13:44 | #7 | |
Пользователь
Регистрация: 03.09.2009
Сообщений: 12
|
Цитата:
к примеру я состовляю такое условие Код:
|
|
19.09.2009, 00:30 | #8 |
Пользователь
Регистрация: 03.09.2009
Сообщений: 12
|
сделал вот так
Код:
|
19.09.2009, 10:13 | #9 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравствуйте vaga.
Вы уже оценили специфичность работы с форматом Data в MS Access о котором я упоминал. SQL сервер понимает обращение к дате в формате "yyyymmdd", для MS Access, приемлем такой вариант: ...WHERE Format(lDate, "yyyymmdd")='" + Format(поле43, "yyyymmdd") + "'" об этом тоже написано выше. Евгений. Последний раз редактировалось Teslenko_EA; 19.09.2009 в 10:15. |
29.09.2009, 22:27 | #10 |
Регистрация: 22.11.2008
Сообщений: 3
|
Teslenko_EA скажите, а как можно реализовать ввод времени через Inputbox? ну вот к примеру ввожу "10,30" и он программа бы понимала что 10 - часы 30 минуты в 24х часовом формате?
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Выборка из БД | ИВАНьКа | Общие вопросы C/C++ | 4 | 21.08.2009 10:02 |
Выборка массивов! | Sasuke-sama | Общие вопросы C/C++ | 10 | 30.05.2009 16:44 |
выборка из БД | xvipx | Microsoft Office Excel | 13 | 30.01.2009 12:43 |
выборка | Ser_gl | Microsoft Office Excel | 1 | 24.08.2007 20:49 |
Выборка | John_chek | БД в Delphi | 10 | 27.06.2007 08:43 |