Mehrere Unterformulare
Unterformular-Wechsel per VBA
Eigentlich könnten wir jetzt zufrieden sein, denn alles funktioniert einwandfrei. Die folgenden Änderungen sind daher eher das Sahnehäubchen, denn es bleiben noch zwei Probleme:
Wie Sie beim Zurechtschieben der Unterformulare sicherlich schon gemerkt haben, ist es recht schwierig, diese auf allen Seiten gleich zu positionieren. Wenn Sie das aber nicht machen, springen sie optisch beim Umschalten.
Eine zweite Schwierigkeit taucht erst bei vielen Datensätzen auf: Beim Laden des Hauptformulars werden zwangsläufig auch alle Unterformulare mit ihren Daten geladen. Je mehr Daten oder je mehr Unterformulare Sie haben, desto langsamer kann das werden.
Da der Benutzer aber sowieso immer nur ein einziges Unterformular tatsächlich sehen kann, täuschen Sie den Wechsel zu einer anderen Seite einfach nur vor.
Wer die übrigen MS-Office-Programme kennt, wird jetzt das andere Kontrollelement vermissen, welches zum Registersteuerelement gehört: das TabControl. Es sieht genau gleich aus, hat aber nicht wirklich einzelne Seiten. Der Inhalt ist immer der gleiche, erst der Seitenwechsel ruft ein Ereignis auf, in welchem per VBA dann der Inhalt geändert wird.
Tatsächlich können Sie das aber auch mit dem Access-Registersteuerelement machen. Entfernen Sie dazu alle Unterformular-Elemente auf den Seiten, die sich im Registersteuerelement noch befinden.
Dann markieren Sie das Registersteuerelement (am einfachsten rechts neben den Seitenreitern) als Ganzes und ändern die Hintergrundart von Normal auf Transparent.
