Så här uppmanar du användaren att spara ändringar i posten i ett formulär i Access
Ursprungligt KB-nummer: 197103
Tips
Kräver grundläggande makron, kodning och kompatibilitetsfärdigheter.
Sammanfattning
När du flyttar till nästa post i ett formulär eller stänger ett formulär sparar Microsoft Access automatiskt alla ändringar som du har gjort i den aktuella posten. Den här artikeln visar hur du använder en BeforeUpdate-händelseprocedur för att uppmana dig att verifiera spara-åtgärden innan Microsoft Access fortsätter.
Microsoft tillhandahåller programmeringsexempel enbart i förklarande syfte och gör inga utfästelser, varken uttryckligen eller underförstått. Detta omfattar men begränsas inte till underförstådd garanti för säljbarhet eller lämplighet för ett visst syfte. I denna artikel förutsätts att du känner till det programmeringsspråk som demonstreras och de verktyg som används för att skapa och felsöka procedurer. Microsofts supportexperter kan hjälpa till att förklara funktionerna i en viss procedur, men de kommer inte att ändra dessa exempel för att tillhandahålla extra funktioner eller konstruera procedurer för att uppfylla dina specifika behov.
Mer information
Försiktighet
Om du följer stegen i det här exemplet ändrar du exempeldatabasen Northwind.mdb. Du kanske vill säkerhetskopiera Northwind.mdb-filen och följa de här stegen på en kopia av databasen.
I det här exemplet används händelseproceduren BeforeUpdate i formuläret Kunder för att uppmana användaren att bekräfta ändringarna innan Microsoft Access sparar posten:
Öppna exempeldatabasen Northwind.mdb och öppna formuläret Kunder i designvyn.
Ange formulärets
BeforeUpdate
egenskap till följande händelseprocedur:Private Sub Form_BeforeUpdate(Cancel As Integer) ' This procedure checks to see if the data on the form has ' changed. If the data has changed, the procedure prompts the ' user to continue with the save operation or to cancel it. Then ' the action that triggered the BeforeUpdate event is completed. Dim ctl As Control On Error GoTo Err_BeforeUpdate ' The Dirty property is True if the record has been changed. If Me.Dirty Then ' Prompt to confirm the save operation. If MsgBox("Do you want to save?", vbYesNo + vbQuestion, _ "Save Record") = vbNo Then Me.Undo End If End If Exit_BeforeUpdate: Exit Sub Err_BeforeUpdate: MsgBox Err.Number & " " & Err.Description Resume Exit_BeforeUpdate End Sub
På felsökningsmenyn klickar du på Kompilera Northwind.
Klicka på Spara Northwind på Arkiv-menyn.
På Arkiv-menyn klickar du på Stäng och återgå till Microsoft Access.
När du nu gör en ändring i en post och sedan antingen flyttar till en annan post eller stänger formuläret uppmanas du att bekräfta att du vill spara den aktuella posten. Om du klickar på Nej återställs posten och åtgärden fortsätter som vanligt.
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för