tirage aléatoire sans remise

mgrizzly

XLDnaute Junior
Bonjour,
Je fais un planning d'agents en vba excel.
Le problème est que lorque je place les agents dans le planning, je m'aperçois qu'il y a quelque agents qui sont remis dans les colonnes suivantes.
Je voudrais qu'une fois qu'un agent est tiré, alors on ne puisse plus le prendre pour les colonnes suivantes qu'il reste à remplir.

On m'a proposé ceci mais je n'arrive pas à remplacer ce qu'il faut dans mon code.
Code:
on réalise ntirage (ntirage<=8)
Redim donnée(1 to 8)
redim résultats (1 to ntirage)
'on stocke les valeur dans donnée
 
for i =1 to ntirage
   'on choisit aléatoirement qu'elle valeur du vecteur donnée sera tiré
   n=Int((ubound(donnée)- 1+ 1) * Rnd + 1)
   'on récupoère le ième résultat
   résultats(i)= donnée(n)
   'on copie les donnée qui n'ont pas été tiré dans le tableau temporaire
   redim temporaire(ubound(donée-1)
   for j = 1 to n
      temporaire(j)=donnée(j)
   next j
   for j = n to ubound(donnée)
      temporaire(j-1)=donnée(j)
   next j
   'temporaire contient toutes les donnée qui n'ont pas encore été tiré
   redim donnée(ubound(temporaire))
   'tu copie les valeur de temporaire dans donnée
    donnée=temporaire 'ca ne devrais pas fonctionner met le bon code
next i

Le code se situe dans les modules roulements1 dans mon fichier.
Le planning s'affiche en cliquant seur le bouton "nbr de restes voulus".

Merci de m'aider
 

Pièces jointes

  • classeur1_pmo.zip
    35.3 KB · Affichages: 109
  • classeur1_pmo.zip
    35.3 KB · Affichages: 118
  • classeur1_pmo.zip
    35.3 KB · Affichages: 112

Discussions similaires

Réponses
11
Affichages
296

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 229
Messages
2 086 426
Membres
103 206
dernier inscrit
diambote