Bonjour à tous
J'aimerais écrire quelques lignes de VBA pour gérer une liste de vœux d'étudiants
Ces étudiants passent un concours et sont classés
Ils formulent alors 3 vœux d'affectation chacun
Puis en fonction du nombre de place par poste ils sont affectés
Le problème c'est que j'ai plusieurs milliers d'étudiants et le faire manuellement prendrait un temps fou
Alors je vous ai fait un petit exemple de feuille
également j'ai une vague idée des étapes du code, malheureusement je ne sais le traduire en VBA....
Voici les étapes:
Ici les données sont sous formes de tableau donc je peux les trier par ordre de prioriré
Ce qui fait que la fonction recherche n'a pas besoin de tenir compte du classement de chacun
Il suffit que la recherche se fasse de haut en bas
Je pense (supposition) que le plus simple serait que :
1: création d'une copie de la liste des voeux et de la liste des places
Puis dans les copies:
2: Recherche "Nice" dans la colonne voeux 1
3: Sur une nouvelle page, recopie le premier nom suivit de "Nice" dans la colonne voeux 1, ici c'est Jean
4: soustraie 1 du nombre de postes pour Nice
5: Supprime toute la ligne correspondant au nom
6: Si le nombre de poste pour Nice > 0 --> refaire la même opération
6 bis: Si le nombre de poste pour Nice = 0 alors passer à une autre vile
8 : une fois toutes les villes effectuées, certains n'aurant pas leur premier choix
9: recommencer alors les mêmes opérations mais cette fois ci dans la colonne voeux 2
Mais sans changer le décompte des postes!
Si Nice = 0 plus aucun postes attribués
10: puis dans la colonne voeux 3
11: pour finir recopier ceux qui n'ont aucune attribution, avec la mention "aucune attribution"
Évidemment ce sera plus clair avec la feuille d'exemple!
Un grand merci à toute la communauté excel
D'avance, et rétrospectivement pour l'aide qu'elle m'a déjà fournie