Unsere Webseiten benötigen JavaScript. Dies scheint in Ihrem Browser jedoch deaktiviert zu sein.

News & Tipps zu Microsoft Access

Lesen Sie hier einige der besten Beiträge aus SmartTools Access Weekly sowie ausgewählte Inhalte anderer E-Mail-Newsletter von SmartTools Publishing rund um Microsoft Access.

Beitrag aus SmartTools Access Weekly

Eingabe abhängig von einem anderen Feld steuern

Access 365 2024 2021 2019 2016 2013 2010

FRAGE In einer Tabelle meiner Access-Datenbank gibt es eine Spalte "A" mit dem Felddatentyp "Ja/Nein". Kann ich die Zulässigkeit der Dateneingabe in einer anderen Spalte "B" davon abhängig machen, ob das Kontrollkästchen in Spalte "A" angekreuzt wurde? Der Standardwert in Spalte "A" ist "Nein". Nur wenn wirklich explizit "Ja" eingestellt wird, soll in Spalte "B" etwas eingetragen werden können. Lässt sich das irgendwie umsetzen?

Diverse Anfragen

ANTWORT Zur Lösung dieses Problems wird ein wenig VBA-Code benötigt. In der Datenblattansicht lässt sich das Problem jedoch nicht lösen, da Access hier kein VBA unterstützt. Helfen können Sie sich, indem Sie die Tabelle per Endlos-Formular anzeigen lassen. Nun können Sie für das Ja/Nein-Feld eine Ereignisprozedur "Nach Aktualisierung" nutzen und darin abhängig vom aktuellen Feldinhalt das andere Feld über dessen Eigenschaft "Enabled" aktivieren oder deaktivieren:

Me.AnderesFeld.Enabled = Me.JaNeinFeld = True

Es kann dann nur geändert werden, wenn das erste Feld auf "Ja" eingestellt wird. Damit das auch über einen Datensatzwechsel hinweg funktioniert, geben Sie in der Ereignisprozedur "Beim Anzeigen" des Formulars folgende Anweisung ein:

Me.AnderesFeld.Enabled = False

Dadurch wird das zweite Feld generell deaktiviert, wenn Access einen Datensatz anzeigt.