Sperrung eines Formular nach Eingabe

Hallo,

ich möchte in meiner Access 2003-Datenbank ein Formular je ID nach der Eingabe für weitere Änderungen sperren. Es soll also jedes Formular nur einmal erfasst werden dürfen. Änderungen sollen dann ausschließlich in der hinterlegten Tabelle möglich sein. Hat jemand eine Idee, wie man dass am einfachsten lösen kann?

Danke!

Hallo,

am einfachsten in Event „Beim Anzeigen“ mittels

if (eineBedingungDiePrueftObAlterDatensatz) = True then
Me.AllowEdits = False
else
Me.AllowEdits = True
endif

Tschau
Peter

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi, Danke zunächst.

ich habe mir mit Deiner Hilfe einen Button eingerichtet (Gesperrt und nicht gesperrt).

Hast Du noch eine Idee, wie man nach einer aktivierten Sperrung des Formulars die Felder andersfarbig hinterlegt, damit die Sperre auch sichtbar ist?

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo.

Hast Du noch eine Idee, wie man nach einer aktivierten
Sperrung des Formulars die Felder andersfarbig hinterlegt,
damit die Sperre auch sichtbar ist?

Falls ich auch eine haben darf :

Sub Sperre\_AfterUpdate()
Dim lpm\_ctl\_FormCtrl As Control
For Each lpm\_ctl\_FormCtrl in Me.Controls
 If Sperre Then
 lpm\_ctl\_FormCtrl.BackColor=quietschbunt
 Else
 lpm\_ctl\_FormCtrl.BackColor=froschfotzengrün
 End If
Next
End Sub

Das funktioniert natürlich nur für solche Controls, die auch die Eigenschaft BackColor haben. Wenn Du im Formular solche verwendest, die diese Eigenschaft nicht haben, musst Du noch eine entsprechende Fehlerabfangroutine basteln. Für quietschbunt und froschfotzengrün musst Du natürlich Farbcodes einsetzen :wink:

Gruß Eillicht zu Vensre