Hallo zusammen - aus einem Endlosformular öffne ich mit diesem Befehl ein zusätzliches Formular um einen neuen Datensatz einzugeben:
Private Sub Command112_Click()
On Error GoTo Err_Command112_Click
Dim stDocName As String
Dim stLinkCriteria As String
DoCmd.OpenForm "F_SalesOrders_Stock", DataMode:=acFormAdd, WindowMode:=acDialog
Me.Requery
Exit_Command112_Click:
Exit Sub
Err_Command112_Click:
MsgBox Err.Description
Resume Exit_Command112_Click
End Sub
Wenn ich das Formular verlasse ich will dann direkt auf den eröffneten Datensatz landen. Kann mir jemand sagen wie ich das machen sollte ?
Danke Cédric
Hallo,
im einfachsten Fall, wenn das Endlosform nach aufsteigenden inkrementellen Autowert als Primärschlüssel sortiert, reicht:
.
.
.
DoCmd.OpenForm "F_SalesOrders_Stock", DataMode:=acFormAdd, WindowMode:=acDialog
Me.Requery
Docmd.Gotorecord,,acLast
Exit_Command112_Click:
.
.
Ansonsten muß im Form "F_SalesOrders_Stock" beim Ereignis "Nach Aktualisierung" eine Public Variable mit dem Primärschlüsselwert gesetzt werden, der zum Positionieren des Endlosform genutzt wird:
In einem Standardmodul:
Public plngPS as Long
Im "F_SalesOrders_Stock":
Sub Form_Afterupdate()
plngPS = Me![IdFeld]
End Sub
und
.
.
Me.Requery
Me.Recordset.Findfirst "[IDFeld] = " & plngPS
Exit_Command112_Click:
.
.