Хорошо, значит, у вас есть родительская форма, а затем вложенная форма.
Вы щелкаете по строке в вложенной форме. Вы хотите, чтобы родительская форма JUMP к этой записи. Но так как вы можете сделать это несколько раз, то на главной форме вы захотите нажать кнопку «назад» или «предыдущий». Когда вы нажимаете эту кнопку «назад», вы хотите, чтобы предыдущий идентификатор, который вы перепрыгнули, имел место.
Хорошо, способ управлять этим и иметь следующий / предыдущий набор кнопок, которые пересекают записи, на которые вы смотрели , работал и нажимал?
Хорошо, в главной форме, на уровне модуля кода, создайте указатель, коллекцию и подпрограмму, подобную этой:
Option Compare Database
Option Explicit
Dim intListPosition As Integer
Dim colRecords As New Collection
Public Sub AddAndJump(MyID As Long)
' add this new ID to the list
intListPosition = intListPosition + 1
colRecords.Add MyID, CStr(intListPosition)
' now jump (move) to this record
Me.Recordset.FindFirst "ID = " & MyID
End Sub
Public Sub BackOne()
' call this code from your back buttion
' go to previous record
If intListPosition > 1 Then
intListPosition = intListPosition - 1
Me.Recordset.FindFirst "ID = " & colRecords.Item(CStr(intListPosition))
End If
End Sub
Public Sub ForwardOne()
'call this code from your forward buttion
If intListPosition < colRecords.Count Then
intListPosition = intListPosition + 1
Me.Recordset.FindFirst "ID = " & colRecords.Item(CStr(intListPosition))
End If
End Sub
Private Sub cmdBack_Click()
BackOne
End Sub
Private Sub cmdNext_Click()
ForwardOne
End Sub
Таким образом, вышеприведенное идет в основной форме.
В моем «образце» кода, я использовал ID, вы должны изменить его на part_id
Теперь, ваш код кнопки в под-форме идет чтобы быть «похожим» на то, что у вас есть, но теперь вы можете использовать это:
Call Me.Parent.AddAndJump(Me.ID)
Итак, вышеизложенное теперь позволит кнопку «следующий / назад» в верхней форме, когда вы нажимаете и выбираете элементы из нижней формы (подформа), затем будет сформирован список «id», и будут работать кнопки для следующего / пред.