Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
2 / 2 / 0
Регистрация: 05.01.2013
Сообщений: 22

Поиск по базе данных при пустом исходном поле поле

11.01.2013, 22:59. Показов 1167. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите доделать поиск в базе данных при условии что поле с выпадающим списком (Forms!Форма!ПолеСоСписком9) пустое и поиск осуществляется только по периоду дат (Checkbox1.Value <> 0).
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Private Sub Êíîïêà2_Click()
Dim sQ As String
u = Forms!Ôîðìà!ÏîëåÑîÑïèñêîì9
 
sQ = " SELECT Òàáë_Äîãîâîðè.* " & _
     " FROM Òàáë_Äîãîâîðè " & _
     " WHERE (([Òàáë_Äîãîâîðè].[" & u & "]) Like '*" & Forms!Ôîðìà!Ïîëå0 & "*' or Forms!Ôîðìà!Ïîëå0 is null) "
 
If Checkbox1.Value <> 0 Then
sQ = " SELECT Òàáë_Äîãîâîðè.* " & _
     " FROM Òàáë_Äîãîâîðè " & _
     " WHERE (([Òàáë_Äîãîâîðè].[" & u & "]) Like '*" & Forms!Ôîðìà!Ïîëå0 & "*' or Forms!Ôîðìà!Ïîëå0 is null) " & _
     " AND (Òàáë_Äîãîâîðè.[Òåðì³í]) " & _
     " BETWEEN #" & Format(Me.DTPicker2, "mm\/dd\/yy") & _
     "# AND #" & Format(Me.DTPicker4, "mm\/dd\/yy") & "# " & _
     " ORDER BY Òàáë_Äîãîâîðè.[Òåðì³í] DESC "
    End If
 
 Me![TestForm].Form.RecordSource = sQ
 Me![TestForm].Form.Requery
 
End Sub
В таком варианте при попытке поиска появляется запрос "Введите значение параметра. Табл_договори. "
Я так понимаю что надо задать условие при котором если поле с выпадающим списком (Forms!Форма!ПолеСоСписком9) пустое та параметру u присвоить значение например "Номер договору" но у меня не получается.
СПАСИБО!
Вложения
Тип файла: zip База юр документов.zip (20.4 Кб, 7 просмотров)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.01.2013, 22:59
Ответы с готовыми решениями:

Условие отбора, что бы при пустом поле в списке выводились ВСЕ записи
Помогите с условием отбора На форме Поле со списком и Список. Выбираю значение в поле со списком - все работает. Что надо указать в...

Как сделать, чтобы при удалении записи в пустом поле автоматом появлялся стандартный текст
Подскажите, плиз! Не знаю как сформулировать, голова уже не соображает, но может кто поймет мой крик в ночи))) Суть такова: как сделать...

Запрет на изменение данных в поле в зависимости от наличия или отсутствия данных в другом поле
Форумчане,доброго времени суток! Помогите решить проблему: В форме &quot;frmВозвраты_Из_ОТК_ОТК_Калинин_СЮ&quot; есть поле...

7
Эксперт MS Access
 Аватар для alvk
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
12.01.2013, 08:45
Сделайте так:
Visual Basic
1
u = Nz(Forms!Форма!ПолеСоСписком9, "Номер договору")
проверил, работает
0
2 / 2 / 0
Регистрация: 05.01.2013
Сообщений: 22
12.01.2013, 10:16  [ТС]
У меня не работает
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Private Sub Кнопка2_Click()
Dim sQ As String
u = Forms!Форма!ПолеСоСписком9
 
If u = "" Then u = Nz(Forms!Форма!ПолеСоСписком9, "№ договору")
 
sQ = " SELECT Табл_Договори.* " & _
     " FROM Табл_Договори " & _
     " WHERE (([Табл_Договори].[" & u & "]) Like '*" & Forms!Форма!Поле0 & "*' or Forms!Форма!Поле0 is null) "
 
If Checkbox1.Value <> 0 Then
sQ = " SELECT Табл_Договори.* " & _
     " FROM Табл_Договори " & _
     " WHERE (([Табл_Договори].[" & u & "]) Like '*" & Forms!Форма!Поле0 & "*' or Forms!Форма!Поле0 is null) " & _
     " AND (Табл_Договори.[Термін]) " & _
     " BETWEEN #" & Format(Me.DTPicker2, "mm\/dd\/yy") & _
     "# AND #" & Format(Me.DTPicker4, "mm\/dd\/yy") & "# " & _
     " ORDER BY Табл_Договори.[Термін] DESC "
    End If
 
 Me![TestForm].Form.RecordSource = sQ
 Me![TestForm].Form.Requery
 
End Sub
Ошибка в 22 строке.
0
Эксперт MS Access
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
12.01.2013, 10:46
Freqq, желательно привести здесь распечатку полученной строки запроса из дебаггера.
Но и так видна ошибка. Ну, или одна из ошибок. В строке Where надо убрать ссылку на поле формы и заменить ее значением. Также как вы делали для Like
Visual Basic
1
2
WHERE (([Табл_Договори].[" & u & "]) Like '*" & Forms!Форма!Поле0 & "*' or " _
& Forms!Форма!Поле0 is null & ")"
0
2 / 2 / 0
Регистрация: 05.01.2013
Сообщений: 22
12.01.2013, 11:16  [ТС]
Исправил как Вы сказали, теперь ошибка на Where (111111)
В исходной базе ошибок не было, только при попытке поиска по периоду с пустыми полями (222222)
Вложения
Тип файла: rar 11111.rar (29.3 Кб, 4 просмотров)
Тип файла: rar 22222.rar (20.4 Кб, 8 просмотров)
0
Эксперт MS Access
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
12.01.2013, 12:11
Черт. Ну, конечно же IsNull(), а не Is Null. ВБА не знает скуэльных операторов.
Visual Basic
1
2
" WHERE (([Табл_Договори].[" & u & "]) Like '*" & Forms!Форма!Поле0 & "*' or " _
& IsNull(Forms!Форма!Поле0) & ") "
0
Эксперт MS Access
 Аватар для alvk
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
12.01.2013, 12:31
Цитата Сообщение от Freqq Посмотреть сообщение
У меня не работает
так правильно не работает, я же сказал, что нужно:

Цитата Сообщение от alvk Посмотреть сообщение
u = Nz(Forms!Форма!ПолеСоСписком9, "Номер договору")
А у вас:


Цитата Сообщение от Freqq Посмотреть сообщение
u = Forms!Форма!ПолеСоСписком9
1
2 / 2 / 0
Регистрация: 05.01.2013
Сообщений: 22
12.01.2013, 12:45  [ТС]
СПАСИБО! ЗАРАБОТАЛО!!!
Вот результат, может кому-то пригодиться!
Вложения
Тип файла: rar Base.rar (24.7 Кб, 19 просмотров)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.01.2013, 12:45
Помогаю со студенческими работами здесь

Какие еще могут быть значения в пустом поле?
Проблема в том? что пытаюсь сделать в форме условное форматирование чтобы если пустое значение в одной ячейке подсвечивалась другая ...

Изменить формулу в вычисляемом поле таблицы в другой базе данных?
Добрый день. Тут возник интересный вопрос, вынесенный в тему. Есть база данных, в которой есть таблица, и в этой таблице - вычисляемое...

Как обеспечить зависимость значений для ввода в поле базы данных от значения в другом поле базы данных?
Есть 2 таблицы справочников (все факторы и все возможные значения - tblDicFactor и tblDicFactorValue), для каждого фактора есть допустимые...

Автоматически обновить поле в форме при добавлении нового значения в поле со списком
помогите плииииз, у меня форма в ней поля: код(счетчик); фамилия(текст); профессия(подстановка из таблицы &quot;профессия&quot;);...

Поиск данных в БД MS ACCES 2003 через текстовое поле и кнопку
Как организовать поиск данных в БД MS ACCES 2003 через текстовое поле и кнопку или хотя бы просто через текстовое поле!


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru