Supportnet / Forum / Datenbanken
Formulareinträge nur speichern bei Mausklick
Frage
Hi,
ich habe hier eine Access-Datenbank, mit Tabellen und Formulare.
Im Formular werden ja automatisch die Eingaben gespeichert wenn man zu einem anderen Datensatz wechselt etc.
Dies soll aber unterbunden werden, und stattdessen nur gespeichert werden, wenn auf einen eingebauten Button geklickt wird.
Wie realisiert man so etwas?
Grüße,
Logic
Antwort 1 von Roadrunner90
Hi,
das geht.
ich hab das so gelöst, dass ich ein Schlüsselfeld erst fülle wenn der entsprechende Button zum speichern gedrückt wird. Ansonsten wird nicht gespeichert und die Fehlermeldung abgefangen.
Gruß Rudolf
das geht.
ich hab das so gelöst, dass ich ein Schlüsselfeld erst fülle wenn der entsprechende Button zum speichern gedrückt wird. Ansonsten wird nicht gespeichert und die Fehlermeldung abgefangen.
Gruß Rudolf
Antwort 2 von Phantom_Fies
Dann bekommt man eventuell aber Probleme mit leeren Datensätzen, wegen Autowert...
Es geht auch, indem man mittels eines Speicherbuttons eine SQL Funktion in VBA die Tabelle mit den Formularwerten aktualisieren oder einen Datensatz anfügen lässt.
Es geht auch, indem man mittels eines Speicherbuttons eine SQL Funktion in VBA die Tabelle mit den Formularwerten aktualisieren oder einen Datensatz anfügen lässt.
Antwort 3 von logic
danke, habs mir doch selber zusammengezimmert.
Jetzt habe ich einen "Save"-Button drin, und zusätzlich folgenden Code:
Logic
Jetzt habe ich einen "Save"-Button drin, und zusätzlich folgenden Code:
Private Sub Form_BeforeUpdate(Cancel As Integer)
'Sicherheitsabfrage
Dim strMsg As String
strMsg = "Daten wurden geändert." & vbCrLf
strMsg = strMsg & "JA = Änderungen speichern" & vbCrLf
strMsg = strMsg & "NEIN = Änderungen rückgängig machen (undo)" & vbCrLf
strMsg = strMsg & "ABBRECHEN = Zum Formular zurückkehren"
antwort = MsgBox(strMsg, vbQuestion + vbYesNoCancel, "Datensatz speichern?")
Select Case antwort
Case vbYes
'do nothing
Case vbNo
DoCmd.RunCommand acCmdUndo
Case vbCancel
Cancel = True 'Speichern abbrechen
Case Default
Exit Sub
End Select
End SubLogic
Antwort 4 von Roadrunner90
Hi Logic,
sieht gut aus, darf ich mir das kopieren?
Gruß Rudolf
sieht gut aus, darf ich mir das kopieren?
Gruß Rudolf
Antwort 5 von logic
Rudolf, nur bei 10 EUR Spende an Supportnet :-)
Ist nämlich ein Virus zwischen den Zeilen eingebaut, der die Festplatte formatiert, wenn nach 30 Tagen nicht gezahlt wird :)
Ne, klar, gerne.
Logic
Ist nämlich ein Virus zwischen den Zeilen eingebaut, der die Festplatte formatiert, wenn nach 30 Tagen nicht gezahlt wird :)
Ne, klar, gerne.
Logic
Antwort 6 von Roadrunner90
Danke :)
Gruß Rudolf und weiterhin viel Spass mit ACCESS
Gruß Rudolf und weiterhin viel Spass mit ACCESS

