Beitrag aus SmartTools Access Weekly
Registerkarteninhalte aktualisieren
Access 365 2024 2021 2019 2016 2013 2010
FRAGE Ich nutze ein Formular mit einem Register und mehreren Seiten, z. B. "Gewichtung", "Bewertung", "Maßnahmen", die jeweils ein Unterformular enthalten. Datenänderungen auf der Seite "Gewichtung" müssten durch Klicken auch auf die Seiten "Bewertung" und "Maßnahmen" aktualisierten werden. Gleiches gilt für die anderen Seiten. Dazu verwende ich zum Beispiel für die Seite "Bewertung" im Ereignis "Beim Klicken" ein Makro mit Aktion "AktualisierenDaten". Leider funktioniert das aber nicht. Verwende ich dasselbe Makro mit einem Button, funktioniert das einwandfrei. Da ich über 40 solche Formulare einsetze, hätte das zur Folge, dass ich in jedes Formular einen Button zur Datenaktualisierung einrichten müsste. Gibt es eine Möglichkeit, mit der ich durch Klick auf den "Reiter" der jeweiligen Seite auch eine Datenaktualisierung erreiche?
R. Urban
ANTWORT Stellen Sie die Eigenschaft "Bei Änderung" des Registerkarten-Steuerelementes auf "[Ereignisprozedur]" ein, klicken Sie auf die Schaltfläche mit den drei Punkten und geben Sie in im VBA-Editor folgende Anweisung ein:
Me.Requery
Speichern Sie die Änderungen und verlassen Sie die VBA-Entwicklungsumgebung wieder. Durch diese Anweisung wird nun bei einem Klick auf einen der Reiter die Datenbasis des Formulars inklusive aller Unterformulare aktualisiert, so dass Änderungen, die auf einer anderen Registerkarte vorgenommen wurden, auch sofort in den anderen Registerkarten sichtbar sind.