Primero, si consigues acertar algo en los próximos sorteos te felicito.
Me he bajado una lista con 1302 sorteos. A y B son las estrellas. En tu caso si tuvieras una tabla con todos podrías crear una consulta con sólo los 10 últimos y usarla como origen. Yo voy a usar esa tabla
Tengo una tabla Parejas, para obtener las más repetidas con los campos Pareja y Veces(que se repiten), y otra tabla Estrellas con lo mismo.
Tienes que tener en cuenta que la combinación más repetida puede ser, por ejemplo, un número de la columna 1 y uno de la 4, uno de la columna 3 y otro de la cinco, etcétera. Por eso hay que comprobar todas las combinaciones. Dicho esto, si tengo un formulario con dos botones
Al pulsar números me "comprueba" todas las combinaciones posibles de los 1302 sorteos y me pasa a la tabla Parejas, los 3 que más se repiten en las posibles combinaciones de columnas
En este caso, la combinación que más se repite es el número 1 en la primera columna y el 48 que está en la última. Con esta tabla hago una consulta
Al abrirla
En el caso de las estrellas es
Aunque en el formulario he puesto dos botones bastaría con uno(he puesto dos por la explicación)
El código de los botones es
Private Sub Comando0_Click()
Dim c As Byte, i As Byte
For i = 1 To 4
For c = 1 To 5 - i
DoCmd.RunSQL "insert into parejas(pareja,veces) SELECT TOP 3 [" & c & "] & "" - "" & [" & c + i & "], Count([" & c & "] & "" - "" & [" & c + i & "]) FROM Sorteo GROUP BY [" & c & "] & "" - "" & [" & c + i & "] HAVING (([" & c & "] & "" - "" & [" & c + i & "]) <> "" - "") ORDER BY Count([" & c & "] & "" - "" & [" & c + i & "]) DESC;"
Next c
Next i
End Sub
Private Sub Comando3_Click()
DoCmd.RunSQL "INSERT INTO Estrellas ( Pareja, Veces ) SELECT TOP 3 [a] & ""-"" & [b], Count([a] & ""-"" & [b]) FROM Sorteo GROUP BY [a] & ""-"" & [b] ORDER BY Count([a] & ""-"" & [b]) DESC;"
End Sub
Si te sirve para algo.