Hallo,
Also ich habe ein Formular unter anderem mit 2 Buttons. Einer fürs Beenden und einen fürs Drucken. Im Ereignis "Vor Aktualisierung" des Formulars habe ich eine Abfrage ob der Datensatz gespeichert werden soll:
Private Sub Form_BeforeUpdate(Cancel As Integer)
If MsgBox("Möchten Sie die Änderungen speichern?", 36, "Speichern?") = vbNo Then
Me.Undo 'rückgängig
Cancel = True 'Ereignisse verhindern
End If
End Sub
Hinter dem Button Drucken steht folgender Code:
Private Sub btnDrucken_Click()
DoCmd.RunCommand acCmdSaveRecord
DoCmd.OpenForm "AuswahlDrucken", acNormal, , , , acDialog
End Sub
Da ich vor dem Drucken den Datensatz speichern muß, wird natürlich auch das Ereignis "Vor Aktualisierung" ausgelöst. Deshalb erscheint die Frage nach dem Speichern auch hier. Das wäre nicht das Problem. Aber klicke ich hier auf NEIN dann kommt: Laufzeitfehler 3021 kein aktueller Datensatz.
Wie komme ich aus der Sache raus. Am Besten wäre es, wenn ich beim Speichern auf Nein klicke und dann eine MsgBox erklären würde, dass ohne Speichern kein Drucken möglich ist.
Hoffe auf eure Hilfe....
Besten Dank, mfg Pjo12345
Hallo,
bau einen Errorhandler ein, im einfachsten Fall
On Error resume next
vor runcommand accmdsaverecord