powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Включение фильтра в подчиненной таблице?
3 сообщений из 3, страница 1 из 1
Включение фильтра в подчиненной таблице?
    #32406563
chkalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Имеется свободная форма, в ней контрол с объектом источником - таблица. Вопрос 1: как применять фильтры к таблице по нажатию кнопки на форме?

Кроме того эта таблица построена так, что связь определяется как 1 ко многим на саму себя

Вопрос 2: как прменять к фильтры к дочерней таблице?

пардон за возможные неясности объяснения
...
Рейтинг: 0 / 0
Включение фильтра в подчиненной таблице?
    #32406647
novss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Из-за неясности объяснения не совсем понял вопрос, но попробую ответить так. Это вариант, когда на форме есть подчиненная форма в таблчном виде, и на главной форме делаем Комбобоксы (напр. по типу Автофильтра в Excel'е), но можно и кнопки и чего угодно.

Sub DoFilter()

Application.Echo False, "Please wait..."

MyStrType = 0

Me![Имя подчиненной формы].Form.Filter = ""
Me![Имя подчиненной формы].Form.FilterOn = True

If Not IsNull(Me![ИмяКонтролаНаОсновФорме]) Then
MyFilter = "[ИмяПоляВПодчФорме] = " & Me![ИмяКонтролаНаОсновФорме]
MyStrType = 1
End If



If Len(MyFilter) > 0 Then
Me![Имя подчиненной формы].Form.Filter = MyFilter
Me![Имя подчиненной формы].Form.FilterOn = True
End If

Application.Echo True, ""


End Sub

Этих условий можно повторять очень много для всех контролов на основной форме. Переменная MyStrType следит за тем, что в каком-то контроле есть значение по которому надо фильтровать и тогда принимает значение 1, если нет, то 0.

В случае если условий будет несколько, то начиная со 2-го и до последнего, условие преобразуется в:

If Not IsNull(Me![ИмяКонтролаНаОсновФорме]) Then
If MyStrType = 0 Then
MyFilter = "[ИмяПоляВПодчФорме] = " & Me![ИмяКонтролаНаОсновФорме]
MyStrType = 1
Else
MyFilter = MyFilter & " and [ИмяПоляВПодчФорме] = " & Me![ИмяКонтролаНаОсновФорме]
End If

Best Regards
...
Рейтинг: 0 / 0
Включение фильтра в подчиненной таблице?
    #32406659
chkalov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В том то и штука, что не форма в табличном виде, а таблица

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


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