J'ai une base de données Access Qui a terme va comporté 500+xxx questions classé par themes et pourquoi pas par niveau de difficulté !
Et j'aimerai réalisé un tirage aléatoire de 20 questions (d'un theme et d'un niveau choisie par l'eleve) mais le probleme c'est que les 20 questions doivent etre unique a chaque tirage (sur les 20 questions, il ne dois pas avoir 2 fois la meme)
Ben en gros, il faut que tu saches combien de question tu as dans ta table (qui corresponde au thème et au niveau de difficulté choisi). Pour ça une simple requête suffit.
Ensuite tu tires le numéro de ta première question que tu classe dans une table (choix sur le nombre de problème).
Pour le deuxième et les suivants, tu as plusieurs possibilités
- Tu tires au hazard, tu vérifies que le numéro n'est pas encore dans la table, s'il l'est tu retires.
- Tu tires une question parmi le nombre de problème-1. Si le nombre est plus grand ou égal à 1 (2,3,4,...) enregistrement de ta table, tu rajoute 1 (2,3,4,...) au numéro de la question et tu places dans la table le numéro de la question. Attention: Si le nouveau numéro est plus grand qu'un autre alors qu'il ne l'était pas avant que tu fasses ton addition, il faut en tenir compte aussi.
Ensuite tu fais une requête en prenant les questions qui correspondent à tes numéros (Ce n'est pas forcément les autoNumber car si t'effaces une entrée les autoNumber ne se suivnet plus forcément).