У меня неограниченная форма под названием [frmTestsMain], который включает в себя 3 субформа:MS Access VBA- Фильтр подчиненный из других подчиненных (в пределах от навигации из главной формы)
- [frmTestsList]
- [frmTMGroupList ]
- [frmTSGroupList]
- [frmTMGroup] имеет поданной «TMGroup»,
- [frmTSGroup] имеет заявку под названием «TSGroup», а другой зарегистрированный файл «TMGroup» связан с [frmTMGroup] .TMGroup.
- [frmTestsList] имеет поиск "TSGroup", связанный с [frmTSGroup] .TSGroup.
Что я хочу:
- Когда я щелкаю [frmTMGroup] .TMGroup, другой подчиненной [frmTSGroup], чтобы быть отфильтрованы, чтобы получить только TMGroup щелкнул.
- Когда я нажимаю [frmTSGroup] .TSGroup, другая подформация [frmTestsList] должна быть отфильтрована, чтобы получить только TSGroup.
Я написал код, как показано ниже, и работал без проблем. Если я открою [frmTestsMain] напрямую.
Private Sub TestMGroup_Click()
Forms![frmTestsMain]![frmTSGroupList].Form.Filter = "TestMGroup =" & Me.ID
Forms![frmTestsMain]![frmTSGroupList].Form.FilterOn = True
End Sub
и
Private Sub TestSGroup_Click()
Forms![frmTestsMain]![frmTestsList].Form.Filter = "TestSGroup =" & Me.ID
Forms![frmTestsMain]![frmTestsList].Form.FilterOn = True
End Sub
Но когда я включил [frmTestsMain] из в навигационной форме с мин от, я получаю сообщение об ошибке.
Я попытался изменить код как следующий, но я получаю ту же самую проблему
Private Sub TestMGroup_Click()
Forms![frmMain]![NaviTests]![frmTestsMain]![frmTSGroupList].Form.Filter = "TestMGroup =" & Me.ID
Forms![frmMain]![NaviTests]![frmTestsMain]![frmTSGroupList].Form.FilterOn = True
End Sub
Не могли бы вы помочь мне, пожалуйста. Благодаря
я читал этот пост, но не мог понять решение: HTTP : //stackoverflow.com/questions/16041901/access-vba-subform-not-filtering-other-subform-when-embbedded-in-navigation-form –
Является ли 'TestMGroup' числом или строкой? Если это строка, вы должны окружить 'Me.ID' кавычками' .Filter = "TestMGroup = '" & Me.ID & "'" ' – BitAccesser
Я изменил код: Forms! [FrmMain]! [NaviTests] ! [frmTestsMain]! [frmTSGroupList] .Form.Filter = "TestMGroup =" & Me.ID & "'" ИЛИ как Forms! [frmTestsMain]! [frmTSGroupList] .Form.Filter = "TestMGroup =" & Me.ID & "", но я все равно получаю сообщение об ошибке, но я все равно получаю сообщение об ошибке –