Re Navigation
В зависимости от метода, который вы используете для поиска, вы не сможете перемещаться вперед и назад. Если вы хотите перемещаться вперед и назад, вам нужно будет указать диапазон поиска. Например, вместо поиска ОДИНОЧНОЙ записи с идентификатором 123 вам нужно будет искать ДИАПАЗОН записей, то есть между идентификатором 123 и идентификатором 234.
Re Saving
Вам не нужно явно сохранять записи в связанных формах (формах, которые напрямую связаны с источником записей). Вы просто меняете данные, а затем идете дальше. Как только вы продолжите, ваши данные будут сохранены - до тех пор, пока ограничения таблицы не будут нарушены.
Повторный поиск
Когда вы создаете основную форму / вложенную форму в Access, эти 2 формы связываются через свойства Child / Master. Поэтому, если вы ищете конкретную запись в основной форме, вам, как правило, не нужно беспокоиться о фильтрации формы. Используя метод, аналогичный тому, который вы используете в комментариях, это будет:
dim qry As String
qry = "select parenttbl.* from parenttbl where parenttbl.id=" & Me.mysearchbox.text &";"
Me.RecordSource = qry
Присоединяя дочернюю таблицу в своем исходном коде, вы можете запутать способность Access сохранять данные, но я сомневаюсь в этом. Я не проверял это, но я не думаю, что вам нужно установить свойство filteron в true после изменения источника записей. Посмотрите, как фильтр используется в этом посте Алленом Брауном http://allenbrowne.com/ser-28.html
Re FilterOn
С учетом вышесказанного вы, вероятно, можете настроить его использование свойства filteron для «поиска» нужной записи, затем вы сможете включить свойство filteron в False и затем перемещаться назад и вперед в своем наборе записей. Я не проверял это все же.
РЕДАКТИРОВАТЬ: Вот пример, когда для свойства FilterOn установить значение false:
Me.FilterOn = False
DoCmd.GoToRecord , , acNext
Чтобы это работало, вам нужно указать в запросе SQL предложение ORDER BY
, с которым связана ваша основная форма. В противном случае вы не сможете перемещаться назад и вперед так, как вы ожидаете.