Elite Veteran
Beiträge: 874
Ort: Wien | Gast123 - 13.09.11
...Tabelle
Artikel_ID Preis aktiv
123 4,40€ ja
123 4,50€ nein
123 4,60€ nein
124 10,40€ ja
125 14,40€ ja
125 14,50€ nein
Im Endlosformular werden Preise für einen Artikel angezeigt und nur einer soll aktiv sein
Artikel_ID Preis aktiv
123 4,40€ ja
123 4,50€ nein
123 4,60€ nein
Ich bin nicht sicher, ob ich dein Anliegen verstehe. Willst du vielleicht, dass immer nur 1 Datensatz (DS) in der Tabelle auf "Ja" steht?
Dann müsstest du im Formular dafür sorgen, dass bei einer Änderung alle anderen DS mit geändert werden. Das geht sowohl bei einem "Optionsfeld", wie du im Betreff schriebst, als auch bei einer Optionsgruppe. Bei einem einzelnen Steuerelement, das Ja/Nein darstellt, ist es üblich, ein Kontrollkästchen zu nehmen, in einer Optionsgruppe eher Optionsfelder.
Im Ereignis "Nach Aktualisierung" des Kontrollkästchens oder der Optionsgruppe kannst du per VBA-Code eine Aktualisierungsabfrage starten z.B.
If Me!aktiv = True Then
Currentdb.Execute "UPDATE Tabelle SET aktiv=False WHERE Id<>" & Me!Id
End If
Dieser Code fragt, ob im aktuellen DS "aktiv" auf Ja (True) geändert wurde. Wenn dem so ist, werden alle anderen DS auf Nein (False) gesetzt. Du musst im o.a. Code nur "Tabelle" durch den Namen deiner Tabelle ersetzen und "Id" durch den Namen eines eindeutigen Feldes in der Tabelle.
----- Servus
Karl
*********
Access-Entwickler-Konferenz: https://www.donkarl.com/?aek - Jetzt anmelden für 19./20.10. in Nürnberg
Access DevCon Vienna: https://www.donkarl.com/devcon
Access Forever: https://www.accessforever.org
Access News: https://www.youtube.com/playlist?list=PLVCeBbJIMDvdJ8ghMbEakJ6_EQyvy... |