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

Фильтрация данных в запросе по значениям полей на форме

19.09.2016, 11:40. Показов 6866. Ответов 27
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
помогите решить задачу с фильтрацией данных в запросе по значениям полей на форме

что есть - какой то запрос, например qrTest с двумя столбцами qaz и wsx
к нему надо сделать возможность фильтрации данных по каждому столбцу, которые берутся с некой формы (fmTest)

если еще раз то к созданному ранее запросу надо просто применять фильтрацию посредством VBA (или макроса)
но данные фильтрации что бы брать с Формы.

заранее благодарен
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.09.2016, 11:40
Ответы с готовыми решениями:

Отбор данных в запросе по нескольким значениям в форме
Уважаемые форумчане. Пытаясь сделать простенькую базу данных натолкнулся на камень отбора данных в запросе, базирующегося на нескольких...

Установить чекбоксы в форме согласно значениям полей БД
У кого был подобный опыт,поделитесь. <td width="120"><input type="checkbox" name="readAccessSecondTable" value="0"...

Поиск данных полей по данным из других полей в форме
Приветствую уважаемые! Помогите пожалуйста мне решить следующую проблему. Я новичок в этом деле, деятельность заключается в другом, но...

27
Мы один, давай на "ты"
3838 / 1384 / 343
Регистрация: 16.06.2016
Сообщений: 3,275
19.09.2016, 12:23
Цитата Сообщение от EugeneBN Посмотреть сообщение
если еще раз то к созданному ранее запросу надо просто применять фильтрацию посредством VBA (или макроса)
А что с ним далее планируется делать?
0
0 / 0 / 0
Регистрация: 19.09.2016
Сообщений: 18
19.09.2016, 12:40  [ТС]
1. просто просмотреть на экране данные
2. но в ИТОГе - вывести отфильтрованные данные в файл EXCEL

Добавлено через 10 минут
те темы что есть не подходят немного. там идет фильтрация ФОРМЫ, такое я уже делал.
А я же хочу применить фильтр именно к готовому ЗАПРОСУ.
0
Мы один, давай на "ты"
3838 / 1384 / 343
Регистрация: 16.06.2016
Сообщений: 3,275
19.09.2016, 12:42
Цитата Сообщение от EugeneBN Посмотреть сообщение
те темы что есть не подходят немного. там идет фильтрация ФОРМЫ, такое я уже делал.
А я же хочу применить фильтр именно к готовому ЗАПРОСУ.
Это-то как раз и нормально - просматривать данные через ФОРМУ. Чем не устраивает этот вариант? Обоснуй.
ЗЫ. В форме тоже можно использовать готовые запросы и даже менять их.
1
0 / 0 / 0
Регистрация: 19.09.2016
Сообщений: 18
19.09.2016, 12:45  [ТС]
ну в самом Аксессе есть фозможность фильтровать данные запроса.
как туда через VBA можно залезть и установить фильтр?
наверняка такое есть...
0
Мы один, давай на "ты"
3838 / 1384 / 343
Регистрация: 16.06.2016
Сообщений: 3,275
19.09.2016, 12:57
Цитата Сообщение от EugeneBN Посмотреть сообщение
ну в самом Аксессе есть фозможность фильтровать данные запроса.
как туда через VBA можно залезть и установить фильтр?
наверняка такое есть...
Есть, но это неправильно, т.к. тебе придётся сначала наложить фильтр на запрос (а то что ты видишь по своей сути табличная форма), затем те же данные фильтровать второй раз и отправлять в Excel. Или придётся ловить открытый запрос и работать с ним как с формой. ИМХО, проблем больше, результат тот же...

Но хозяин - барин...

Добавлено через 2 минуты
Upd. Ещё меню/кусок ленты придётся городить. Этим же надо будет управлять. А форма уже есть - куда пишут параметры фильтрации.
0
0 / 0 / 0
Регистрация: 19.09.2016
Сообщений: 18
19.09.2016, 13:04  [ТС]
хорошо, так как же сделать все таки экспорт данных в EXCEL (пусть пока без пред.просмотра), которые вытягиваются через определенный запрос и перед эти наложить на него еще раз опред. фильтр (по данным с некой ФОРМЫ), не могу понять..... (((

Добавлено через 2 минуты
Есть, но это неправильно, т.к. тебе придётся сначала наложить фильтр на запрос (а то что ты видишь по своей сути табличная форма), затем те же данные фильтровать второй раз и отправлять в Excel

еще знать как бы это сделать ))))
0
Мы один, давай на "ты"
3838 / 1384 / 343
Регистрация: 16.06.2016
Сообщений: 3,275
19.09.2016, 19:17
EugeneBN, примеры нужно прикладывать вопрошающему...

Появилось свободное время, сделал тебе пример, разбирайся...

Фильтры складываются в примере, пока не сбросишь. Обработок ошибок почти не делал...

Сделано на основе Борея. Формы, код выкинут...
Вложения
Тип файла: zip Пример5_0.zip (158.5 Кб, 114 просмотров)
0
0 / 0 / 0
Регистрация: 19.09.2016
Сообщений: 18
19.09.2016, 19:32  [ТС]
ого, какая красота. спасибо.

да, такой вопрос, как добраться в запрос в некое поле поставить фильтр.

например есть запрос qrTEST с полями NAME и Key
вот я хочу поле Key отфильтровать и внести в сам запрос фильтр, со значением например "10"

я что то похожее нашел, но оно не вносит фильтр, и не работает (((

Visual Basic
1
2
3
4
5
6
Dim qdf As QueryDef, db As Database, N As Long
Set db = CurrentDb()
Set qdf = db.QueryDefs("qrTEST")
qdf.Parameters("Key") = 10
qdf.Execute 
qdf.Close
0
Мы один, давай на "ты"
3838 / 1384 / 343
Регистрация: 16.06.2016
Сообщений: 3,275
19.09.2016, 19:55
EugeneBN, всё вносит,. всё работает, только набор нужно получить и с ним работать. А в запросе ты ничего так просто не увидишь.
Зачем тебе это? Я же в примере показал всё.
0
0 / 0 / 0
Регистрация: 19.09.2016
Сообщений: 18
19.09.2016, 19:58  [ТС]
нет, что то тут не то...

можно сделать конечно так
Visual Basic
1
QueryDefs("qrTEST").SQL = "ввод запроса с учетом фильтров"
но я хочу именно по конкретному полю поставить фильтр, не переписывая запрос глобально, затронуть только 1 поле

подскажите пж.,как именно этот момент сделать... ну есть у меня свои идеи и таракашки... пожалуйста
ничего не выходит (((
0
Мы один, давай на "ты"
3838 / 1384 / 343
Регистрация: 16.06.2016
Сообщений: 3,275
19.09.2016, 20:02
Цитата Сообщение от EugeneBN Посмотреть сообщение
QueryDefs("qrTEST").SQL = "ввод запроса с учетом фильтров"
плохое решение
Цитата Сообщение от EugeneBN Посмотреть сообщение
ну есть у меня свои идеи и таракашки
Некогда мне насекомыми заниматься. А методом "тыка" - нафиг, нафиг...
0
0 / 0 / 0
Регистрация: 19.09.2016
Сообщений: 18
19.09.2016, 20:04  [ТС]
это плохое решение пока единственное (((
во всяком случае оно пересохраняет запрос с параметрами фильтра
0
Мы один, давай на "ты"
3838 / 1384 / 343
Регистрация: 16.06.2016
Сообщений: 3,275
19.09.2016, 20:09
Цитата Сообщение от EugeneBN Посмотреть сообщение
это плохое решение пока единственное (((
во всяком случае оно пересохраняет запрос с параметрами фильтра
И как ты вернёшься к исходному запросу?

Добавлено через 2 минуты
Совершенно не понимаю, зачем переться через канализацию, когда в доме есть дверь...
0
0 / 0 / 0
Регистрация: 19.09.2016
Сообщений: 18
19.09.2016, 20:10  [ТС]
как вариант делать копию нового запроса, а с текущего брать только начальный код

вроде этого
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
Dim dbsCurrent As Database
 Dim qryTestCreate As QueryDef
 Dim qryTest As QueryDef
 
 Set dbsCurrent = CurrentDb
 Set qryTestCreate =  dbsCurrent.CreateQueryDef("Запрос0", "SELECT * FROM Таблица1;") ' Создаём запрос 
 
 Set qryTest = dbsCurrent.QueryDefs("Запрос1") ]") ' Обращаемся к существующему запросу
 MsgBox qryTest.SQL                     ' Смотрим что у нас в существующем запросе
 qryTest.SQL = "SELECT * FROM Таблица2;" ' Изменяем запрос
 MsgBox qryTest.SQL                     ' Смотрим что у нас в изменённом запросе
 qryTest.Delete "Запрос1"               ' Удаляем запрос при необходимости
0
Мы один, давай на "ты"
3838 / 1384 / 343
Регистрация: 16.06.2016
Сообщений: 3,275
19.09.2016, 20:13
Цитата Сообщение от EugeneBN Посмотреть сообщение
как вариант делать копию нового запроса, а с текущего брать только начальный код
Это п****! Меня фура раздавила! © одна начинающая водительница
0
0 / 0 / 0
Регистрация: 19.09.2016
Сообщений: 18
19.09.2016, 20:19  [ТС]
в примере все очень красиво. фильтры то работают.
но зачем я привязался к отчету - т.к. хочу еще это вывести в Excel.
Для этого мне и нужен отфильтрованный запрос
0
Мы один, давай на "ты"
3838 / 1384 / 343
Регистрация: 16.06.2016
Сообщений: 3,275
19.09.2016, 20:22
Цитата Сообщение от EugeneBN Посмотреть сообщение
т.к. хочу еще это вывести в Excel.
EugeneBN, а кнопку с надписью "Excel" ты там внизу не заметил?
0
0 / 0 / 0
Регистрация: 19.09.2016
Сообщений: 18
19.09.2016, 20:27  [ТС]
уже вижу... только неужели это (кода на пару страниц) проще чем просто изменить запрос и вывести данные одной командой типа DoCmd.OpenQuery stDocNameAll, acNormal, acEdit
0
Мы один, давай на "ты"
3838 / 1384 / 343
Регистрация: 16.06.2016
Сообщений: 3,275
19.09.2016, 20:33
EugeneBN, ну вообще-то универсальность несколько затратна...
Ты же не удосужился приложить пример, вот я и сделал универсально. Потом ещё кому-то кину...
И не пару там страниц... И форматирование если убрать с экселя, да обработку ошибок...

Добавлено через 1 минуту
Цитата Сообщение от EugeneBN Посмотреть сообщение
DoCmd.OpenQuery stDocNameAll, acNormal, acEdit
Это не выведет данные в эксель
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.09.2016, 20:33
Помогаю со студенческими работами здесь

Использование функций в SQL запросе, в частности, фильтрация данных
Dim d1, d2, m1, m2, y1, y2 As String d1 = Me.DateTimePicker1.Value.Day d2 = Me.DateTimePicker2.Value.Day m1 =...

Фильтрация данных в форме по набранным буквам
помогите пожалуйста :wall: нужно фильтровать форму по набранным буквам, верхном части формы есть поля в котором ведутся буквы для...

Фильтрация данных в подчиненной форме по значению поля в другой ПФ
Доброго времени суток! Подскажите пожалуйста как реализовать следующее; В форме имеется 2 подчиненных формы. Как сделать так, чтобы при...

Фильтрация данных в разделенной форме по значению поля со списком
Всем привет, появилась такая необходимость сделать в форме фильтрацию по полю со списком, просмотрел аналогичные темы на форуме, но не...

Сложение данных из символьных полей в запросе с группировкой (аналог функции Sum()
Специально название темы сдублировал с данной статьи http://am.rusimport.ru/MSAccess/topic.aspx?ID=672 Function Наименование(Наряд,...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
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