Office ab Version 2401 - ODBC und ESC Taste
Hops
Gesendet: 16.03.24 14:48
Betreff: RE: Office ab Version 2401 - ODBC und ESC Taste


Member

Beiträge: 11

mcdpone - 14.02.24 16:16
Select Case KeyCode
Case 27 'Esc
RunCommand acCmdSaveRecord
DoCmd.Close , , acSaveNo
End Select

Private Sub Form_Close()
Dim ZAK As Recordset
Set ZAK = CurrentDB.OpenRecordset("Hier_Der_SQL_STRING" dbOpenDynaset, dbSeeChanges)
ZAK.Close
Set ZAK = Nothing
End Sub



Die ESC-Taste zum Speichern des Datensatzes zu nutzen halte ich für ungünstig. ESC dient eigentlich meistens für Rückgängig, Abbruch und dergleichen.

Die ESC-Taste wird, soweit ich weiß, nach dem Abarbeiten der Prozedur weiter gegeben. Um das zu verhindern, müsste KeyCode=0 gesetzt werden.

Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
(....???)
Case 27 'Esc
KeyCode=0
RunCommand acCmdSaveRecord
DoCmd.Close , , acSaveNo
End Select
end sub


Warum führst du die Prozedur in nicht im Casezweig aus?

Taucht das Problem unabhängig von der Art der Abfrage auf.

Vielleicht hilft das:

Private Sub Form_Close()
Dim ZAK As DAO.Recordset
Dim dbs as DAO.Database
set dbs = Currentdb
Set ZAK = dbs.OpenRecordset("Hier_Der_SQL_STRING" dbOpenDynaset, dbSeeChanges)
(...???)
ZAK.Close
Set ZAK = Nothing
dbs.Close
Set dbs = Nothing
End Sub
Top of the page Bottom of the page