The button OnClick must create a query string, like:
Code:
SQLStr =
"INSERT INTO [Bezetting per dag] ( KalenderId, KindgegevensId, OpvangCodesId )
SELECT Kalender.ID, Klantenbestand.Id, Switch(Kalender.Dag="maandag",[Opvang weekprofiel].[Opvang maandag],Kalender.Dag="dinsdag",[Opvang weekprofiel].[Opvang dinsdag],Kalender.Dag="woensdag",[Opvang weekprofiel].[Opvang woensdag],Kalender.Dag="donderdag",[Opvang weekprofiel].[Opvang donderdag],Kalender.Dag="vrijdag",[Opvang weekprofiel].[Opvang vrijdag],Kalender.Dag="zaterdag",[Opvang weekprofiel].[Opvang zaterdag],Kalender.Dag="zondag",[Opvang weekprofiel].[Opvang zondag]) AS OpvangCode
FROM Klantenbestand INNER JOIN (Kalender INNER JOIN [Opvang weekprofiel] ON (Kalender.Datum>= [Opvang weekprofiel].[Startdatum weekprofiel]) AND (Kalender.Datum<= [Opvang weekprofiel].[Stopdatum weekprofiel])) ON Klantenbestand.Id=[Opvang weekprofiel].[Kind gegevens Id]
WHERE [Opvang weekprofiel].Id= " & IDValue
where IDValue is read either from same form as [Id] when the button is on subform, or it is the value of active row Id of subform when the button is on parent form. User selects a row on subform (clicks on any available field in row, or navigates to it using subform navigation buttons), and then clicks on report button. After the SQL string is created, the same OnClick event runs the query defined by SQL string.