Guten Morgen meine lieben Experten!
Ich brauche eure Hilfe! Dank eurer Hilfe habe ich schon eine echt coole Access Datenbank. Ich möchte aber noch hinbasteln, dass das Feld Termin nur in bestimmten Fällen abgeändert werden kann. Vorab zur Info - das Feld "Termin" ist im Formular ein berechnetes Feld --> Es werden mittels VBA immer 1 1/2 Monate zum heutigen Tag dazu gerechnet.
Das Feld Termin ist also im Eigenschaftenblatt/Daten gesperrt. Wenn aber nun ein bestimmtes Ereignis in einem Kombinationsfeld weiter oben ausgewählt wird - also z.B. Spezialfall - dann muss das Terminfeld editierbar sein, weil der Termin auch weiter in der Zukunft liegen kann.
Das wäre mein Lösungsansatz:
Private Sub cbo_Gegenstand_der_Analyse_AfterUpdate()
If cbo_Gegenstand_der_Analyse = "Überprüfung laufend" Or cbo_Gegenstand_der_Analyse = "Überprüfung im Zuge Anlassfall" Then
Me!txt_Termin.Enabled = True
Me!txt_Termin.Locked = True
Else
Me!txt_Termin.Enabled = False
Me!txt_Termin.Locked = False
End If
End Sub
Das Feld wird dann zwar von grau auf "anscheinend" veränderbar umgestellt, aber ich kann kein Datum ändern (weder durch Eingabe noch durch den "Kalender").
Was mache ich falsch?
:-\
lg
Mary
Moin,
Zitat
... Vorab zur Info - das Feld "Termin" ist im Formular ein berechnetes Feld ...
und da wundert dich, dass du den Wert nicht verändern kannst? Wahrscheinlich brauchst du ein weiteres Feld, in dem die Sonderfälle Datum aufgenommen werden. Die Berechnung für die Anzeige muss diese Möglichkeit dann mit auswerten.
Hallo,
Zitatdas Feld "Termin" ist im Formular ein berechnetes Feld --> Es werden mittels VBA immer 1 1/2 Monate zum heutigen Tag dazu gerechnet.
WIE wird das gemacht? Wo steht der Code?
Ein "Berechnetes Feld" ist grundsätzlich nicht editierbar, sobald die Berechnung in seiner Eigenschaft "Steuerelementinhalt" durchgeführt wird.
Ist das Textfeld an ein Tabellenfeld gebunden und das Datum wird in einer Ereignisprozedur berechnet und dem Textfeld zugewiesen, dann sollten an dieser Stelle die Berechnung und Eigenschaft-Einstellungen je nach Bedingung behandelt werden.