Warnung bei Datensatzänderung

Hallo,

ich stehe vor folgendem Problem. In einem Formular mit Kunden habe ich ein Textfeld mit dem Namen des Kunden. Dieser soll grundsätzlich geändert werden können. Jedoch soll der Anwender vor dem Ändern des Kundennamens über eine Meldung gefragt werden, ob er die Änderung wirklich durchführen will. Wählt er OK soll die Änderung gespeichert werden, wählt er ABBRECHEN soll die Änderung rückgängig gemacht werden.
Hat jemand einen Vorschlag, wie man dies erreichen könnte, vermutlich wohl in Verbindung mit einem Makro?

Für Vorschläge wäre ich sehr dankbar.

Gruß
Nico

Hallo Nico,

deine ursprüngliche Überschrift bezieht sich auf den ganzen Datensatz.
Diesbezügliche Einstellungen kannst du global über Extras/ Optionen / Bearbeiten/Suchen ändern.

Wählt er OK soll die Änderung gespeichert werden, wählt er ABBRECHEN
soll die Änderung rückgängig gemacht werden.
Hat jemand einen Vorschlag, wie man dies erreichen könnte,
vermutlich wohl in Verbindung mit einem Makro?

nein, mit einem entsprechenden VBA - Code. Ein Makro wäre da die falsche Wahl.

Du mußt folgendes in VBA programmieren:

Beim Ereignis: bei Fokuserhalt

  • den Inhalt des Namenfeldes in einer Variablen zwischenspeichern.

Beim Ereignis: bei Fokusverlußt

  • MSGBOX erstellen und fragen
  • wenn OK = keine weiteren Maßnahmen
  • wenn Abbruch = Wert der Variablen wieder in das Namensfeld schreiben

Grüße aus Essen
Wolfgang
(Netwolf)

Hallo,

das ist eigentlich nicht notwendig, das erledigt Access fuer dich hierzu gibt es den Member .oldValue wenn was veraendert wurde.

Beim Ereignis: bei Fokuserhalt

  • den Inhalt des Namenfeldes in einer Variablen
    zwischenspeichern.

Das ganze im Ereignis „NachAktualisieren“ verhindert, das die Box auch erscheint wenn man mit TAB duch das Formular laeuft bzw. nichts aendert. Bei einer Aenderung steht in feldname.oldValue dann der vorherige Wert drin, den man mittels
feldname.value = feldname.oldValue zurueckstetzen kann, me.Undo tuts auch, aber da werden auch Aenderungen in anderen Feldern zurueckgesetzt.

Beim Ereignis: bei Fokusverlußt

  • MSGBOX erstellen und fragen
  • wenn OK = keine weiteren Maßnahmen
  • wenn Abbruch = Wert der Variablen wieder in das Namensfeld
    schreiben

Grüße aus Essen
Wolfgang
(Netwolf)

Tschau
Peter