er zit een foutje in je code,
Reports!rptLeerstof.ListBox1.AddItem List1.Text
staat ACHTER een exit sub.
maar dan nog moet je het listboxitem geselecteerd hebben, en aangezien de recordsource van het rapport de tabel is, is de listbox willekeurig geplaatst (als in: niet horende bij een record).
waarom sla je die leerstof-items 'optellen en aftrekken' en 'vermenigvuldigen en delen' niet op in tblLeerstof, dan kan je ze daaruit gewoon oproepen in je rapport.
Ik zag dat de tabel zelf wel een combobox gebruikt voor die velden, maar het formulier is nodeloos ingewikkeld imho.
Als je een gecombineerde sleutel toepast op leerling EN periode, heb je meer mogelijkheden.
Je kan beter een tabel met leerlingen hebben, laten we zeggen 1-26. dan kan 'lesstof voor leerling 1 in periode A' in een andere tabel staan, SAMEN MET 'lesstof voor leerling 1 in periode B'.
Nu kan dat niet, en heb je zowel een tabel tblLeerling waarin iedere leerling maar een keer past, en tblLeerstof waarin iedere leerling óók maar een keer past (met maar één periode en één lesstof) door de sleutel!
Dan zijn de relaties een stuk zinvoller. 1-1 relaties tussen tabellen zijn eigenlijk onwenselijk in een database. dat heet normalisatie.
Het mooiste is: je kan dan records filteren in rapporten. op leerling, krijg je gelijk een overzicht van alle periodes van DIE leerling, of andersom. of leerling/periode.
kortom, neem het datamodel nog eens goed onder de loep, gooi je MS forms objecten eruit en open rapporten met linkcriteria.