Penn White
ecritt1 at alltel.net
Tue Apr 4 05:45:16 CDT 2006
Just discovered a lovely little one-two punch that everyone probably already knows about but was new to me. If the user cancels an operation, I wanted to take them back to the record they were working on before they opened some other window. The example is when my user clicks on the "Add New Record" command button. If he/she changes his/her mind and decides to cancel the add operation, then I want to return to the record they were working on before they opened the "Add New Record" popup. Because of some other things that are done in that popup, I need to requery the original form during the Cancel. As you know, when the form is requeried, it returns to the first record in the form. The workaround I discovered is this: Private Sub cmdCancel() Dim lngCurrRec as Long lngCurrRec = Forms!PreviousFormName.CuirrentRecord ------- Whatever other code you want in the Cancel event including the Forms!PreviousFormName.Requery ------- DoCmd.GoToRecord acDataForm, "PreviousFormName", acGoTo, lngCurrRec DoCmd.Close acForm, Me.name Exit Sub This won't work if you've added any new records, of course, but it works great for a Cancel operation. I've used recordset bookmarks a lot for similar operations but they won't work in this instance and this is so clean and neat, I really like it. Penn