Wenn Du nicht mit Makros arbeiten willst ist die einfachste Variante, dies über eine Filter-Tabelle zu erledigen.
Erstelle eine neue Tabelle “Filter” mit einem Primärschlüssel “ID” (boolean/ Ja-Nein-Feld) und “KlassenID” (vermutlich Integer, wenn Du die Klassen in einer separaten Tabelle aufführst und nicht den Namen als Primärschlüssel verwendest). Den ersten Datensatz dieser Filter.Tabelle musst Du erstellen, indem Du “ID” auf ‘Ja’ stellst.
Erstelle dann eine Abfrage für Deine Daten, die in der Bedingung auf diese Tabelle zugreift. Kann so sein wie
SELECT * FROM "Schueler" WHERE "KlassenID" = (SELECT "KlassenID" FROM "Filter" WHERE "ID" = TRUE)
Dein Formular hat jetzt zwei separate Formularelemente. Ein Formular, das nur die Filter-Tabelle mit neuen Daten versieht und ein zweites Formular, das über die Abfrage seine Daten erhält.
Das Formular für die Filter-Tabelle stellst Du in den Eigenschaften so ein, dass nur Daten geändert werden können und immer die Daten angezeigt werden, die in dem Datensatz mit “ID” = “TRUE” stehen. Das einzige Element in diesem Formular ist ein Listenfeld, das die Klassen aufzeigt, aber die ID der Klassen in die Filtertabelle schreibt.
Das Formular für die Abfrage erhält zusätzlich zu den Inhalten einen Button, der das Formular aktualisieren soll. Dieser Button liegt direkt neben dem Listenfeld. Verlässt jetzt der/die Nutzer(in) das Listenfeld und rückt auf den Button, so wird zuerst der Wert des Listenfeldes gespeichert (über das verlassen dieses Formulars) und das andere Formular (in dem der Button positioniert ist) wird aktualisiert. Das Klassen-Formular zeigt also die SchülerInnen der ausgewählten Klasse an.
Steht übrigens alles auch so im Handbuch, das unter der Dokumentation LibreOffice oder direkt von meiner Homepage heruntergeladen werden kann.