Secondo me è un percorso contorto.
A che serve selezionare le prime 8 lezioni e accodarle in un'altra tabella statistiche.
Forse bastava un semplice campo calcolato lezioni acquistate - lezioni fatte.
premetto che sono d'accordo... comunque... prova questo:
evento load maschera:
Dim strSQL As String
strSQL = "SELECT TOP 8 [Tab Lezioni Tessera].NomeAllievo, [Tab Lezioni Tessera].CognomeAllievo, [Tab Lezioni Agenda].Svolta, [Tab Lezioni Tessera].IDTessera, [Tab Lezioni Tessera].DataTessera, [Tab Lezioni Tessera].CostoTessera, [Tab Lezioni Tessera].Pagato, Count([Tab Lezioni Agenda].Svolta) AS ConteggioDiSvolta FROM [Tab Lezioni Tessera] INNER JOIN [Tab Lezioni Agenda] ON "
strSQL = strSQL & "([Tab Lezioni Tessera].CognomeAllievo = [Tab Lezioni Agenda].CognomeAllievo) AND ([Tab Lezioni Tessera].[NomeAllievo] = [Tab Lezioni Agenda].[NomeAllievo]) "
strSQL = strSQL & "GROUP BY [Tab Lezioni Tessera].NomeAllievo, [Tab Lezioni Tessera].CognomeAllievo, [Tab Lezioni Agenda].Svolta, [Tab Lezioni Tessera].IDTessera, [Tab Lezioni Tessera].DataTessera, [Tab Lezioni Tessera].CostoTessera, [Tab Lezioni Tessera].Pagato, [Tab Lezioni Tessera].NumeroLezioniAcquistate "
strSQL = strSQL & "HAVING ((([Tab Lezioni Tessera].NomeAllievo)=[NOME ALLIEVO?]) AND (([Tab Lezioni Tessera].CognomeAllievo)=[COGNOME ALLIEVO?]) AND (([Tab Lezioni Agenda].Svolta)=True)); "
Me.RecordSource = strSQL
nell'evento click di un pulsante:
Dim strSQL As String
strSQL = "SELECT TOP " & CStr(Me.NumeroLezioniAcquistate) & " [Tab Lezioni Tessera].NomeAllievo, [Tab Lezioni Tessera].CognomeAllievo, [Tab Lezioni Agenda].Svolta, [Tab Lezioni Tessera].IDTessera, [Tab Lezioni Tessera].DataTessera, [Tab Lezioni Tessera].CostoTessera, [Tab Lezioni Tessera].Pagato, Count([Tab Lezioni Agenda].Svolta) AS ConteggioDiSvolta FROM [Tab Lezioni Tessera] INNER JOIN [Tab Lezioni Agenda] ON "
strSQL = strSQL & "([Tab Lezioni Tessera].CognomeAllievo = [Tab Lezioni Agenda].CognomeAllievo) AND ([Tab Lezioni Tessera].[NomeAllievo] = [Tab Lezioni Agenda].[NomeAllievo]) "
strSQL = strSQL & "GROUP BY [Tab Lezioni Tessera].NomeAllievo, [Tab Lezioni Tessera].CognomeAllievo, [Tab Lezioni Agenda].Svolta, [Tab Lezioni Tessera].IDTessera, [Tab Lezioni Tessera].DataTessera, [Tab Lezioni Tessera].CostoTessera, [Tab Lezioni Tessera].Pagato, [Tab Lezioni Tessera].NumeroLezioniAcquistate "
strSQL = strSQL & "HAVING ((([Tab Lezioni Tessera].NomeAllievo)=[NOME ALLIEVO?]) AND (([Tab Lezioni Tessera].CognomeAllievo)=[COGNOME ALLIEVO?]) AND (([Tab Lezioni Agenda].Svolta)=True)); "
Me.RecordSource = strSQL
non ho potuto testarli perchè non ho le tabelle compilate con i dati opportuni... ma il codice dovrebbe essere esatto...
ma "NumeroLezioniAcquistate", dove dovresti scrivere il numero lez da visualizzare, è un controllo non associato vero?
saluti