Supportnet / Forum / Datenbanken
Datensatz sperren wenn Datum()-1
Frage
Hallo Leute
Ich habe ein Formular erstellt mit folgenden Spalten:
Eingansdatum - Lagerplatz – Stückzahl - Bemerkungen - Verschleiss - Visum
Ich möchte dass die Datensätze die hinter dem Aktuellen Datum(),(Spalte Eingangsdatum) liegen gesperrt werden.
D.h der Benutzer kann die Daten die hinter dem Aktuellen Datum() liegen einsehen aber nicht mehr ändern
In den Eigenschaften des Formulars habe ich hinter der Aktion „beim Öffnen“ folgenden VBA Code hinterlegt.
Private Sub Form Open (Cancel as Integer)
If Me! Ein_Dat = "Datum ()-1" Then
Me! Ein_Dat.Locked = True
Me! Lagerplatz.Locked = True
Me! Stückzahl.Locked = True
Me! Verschleiss_In_MM.Locked = True
Me! Visum_Ein.Locked = True
Else
Me! Ein_Dat.Enabled = True
Me! Lagerplatz.Enabled = True
Me! Stückzahl.Enabled = True
Me! Verschleiss_In_MM.Enabled = True
Me! Visum_Ein.Enabled = True
End If
End Sub
Mit diesem Code funktioniert es nicht.
Was mache ich falsch?
Antwort 1 von MickK
Hallo,
so gehts nicht. Ich würde das 'Beim Anzeigen' machen und für den Vergleich kannst Du die DateDiff-Funktion benutzen.
Gruß
Mick
so gehts nicht. Ich würde das 'Beim Anzeigen' machen und für den Vergleich kannst Du die DateDiff-Funktion benutzen.
...
If DateDiff("d", Me!Ein_Dat, Now()) > 0 Then
...
Gruß
Mick
Antwort 2 von Wangdü
Vielen Dank für den Tipp
Melde mich wieder falls es nicht geklappt hat.
Gruss Wangdü
Melde mich wieder falls es nicht geklappt hat.
Gruss Wangdü
Antwort 3 von Wangdü
Hallo
wenn ich die Funktion
...
If DateDiff("d", Me!Ein_Dat, Now()) > 0 Then
als Vergleich Benutze sind die Spalten
für Die Dateneingabe gesperrt, auch für neue
Daten.kann also nichts eingeben
Ich möchte aber dass der Aktuelle Tag
für die Dateneingabe frei ist.
Nur die Spalten die hinter dem
aktuellen Datum liegen dürfen gesperrt sein.
Für Antworten danke im Voraus
Gruss Wangdü
wenn ich die Funktion
...
If DateDiff("d", Me!Ein_Dat, Now()) > 0 Then
als Vergleich Benutze sind die Spalten
für Die Dateneingabe gesperrt, auch für neue
Daten.kann also nichts eingeben
Ich möchte aber dass der Aktuelle Tag
für die Dateneingabe frei ist.
Nur die Spalten die hinter dem
aktuellen Datum liegen dürfen gesperrt sein.
Für Antworten danke im Voraus
Gruss Wangdü
Antwort 4 von MickK
Hallo,
wenn Du nur gefüllte Datensätze verarbeiten willst, musst Du vorher das Feld Ein_Dat untersuchen. Hast Du keinen Standardwert in der Tabellendefinition angegeben, befindet sich in einem Feld eines neuen Satzes ein NULL-Wert. Den kann man abfragen. Also nur gefüllte Sätze:
Gruß
Mick
wenn Du nur gefüllte Datensätze verarbeiten willst, musst Du vorher das Feld Ein_Dat untersuchen. Hast Du keinen Standardwert in der Tabellendefinition angegeben, befindet sich in einem Feld eines neuen Satzes ein NULL-Wert. Den kann man abfragen. Also nur gefüllte Sätze:
...
If Not IsNull(Me!Ein_Dat) then
If DateDiff("d", Me!Ein_Dat, Now()) > 0 Then
...
End if
End if
...
Gruß
Mick
Antwort 5 von n3xt
Hi !
Ich sehe gerade, der Psot ist schon was älter, aber ich versuchs trotzdem ;-).
Habe diese Funktion angepaßt, funktioniert super, besten Dank.
Meine Frage / mein Problem ist nur, ich habe in dem Formular ein Unterformular. Wie schaffe ich es, auch dieses mit der Funktion "abzudecken" / bzw mit zu sperren?
Besten Dank, MfG
Ich sehe gerade, der Psot ist schon was älter, aber ich versuchs trotzdem ;-).
Habe diese Funktion angepaßt, funktioniert super, besten Dank.
Meine Frage / mein Problem ist nur, ich habe in dem Formular ein Unterformular. Wie schaffe ich es, auch dieses mit der Funktion "abzudecken" / bzw mit zu sperren?
Besten Dank, MfG