Sub poste()
Randomize'utilise le time pour générer les chiffres aléatoires
Feuil3.[A2:D50].ClearContents'on efface ancienne données
lig = 1
For k = 2 To 11 Step 3'boucle compte de 3 en 3 de 2 à 11
col = col + 1: lg = 1
bas = Feuil1.Cells(500, col).End(3).Row'dernière cellule, col est N° colonne
For b = 1 To Feuil2.Cells(k, 2) 'nbre personnes
Do' boucle jusqu'a Loop tant que l'on ne fait pas sortir
num = Int(((bas - 1) * Rnd) + 2)'tirage aléatoire bas=bas de la colonne
'appli.match renvoie le N° ligne si trouvé sinon error
If Not IsNumeric(Application.Match(Feuil1.Cells(num, col), Feuil3.[J1:J100], 0)) Then
lg = lg + 1: Feuil3.Cells(lg, col) = Feuil1.Cells(num, col)'mets le nom
'ci-dessous mets le nom à la suite en col J et sort du do-loop
lig = lig + 1: Feuil3.Cells(lig, 10) = Feuil1.Cells(num, col): i = 0: Exit Do
End If
'on incrémente i et si on test 100 fois c'est pas possible on quitte
i = i + 1: If i > 100 Then MsgBox "Recommencez !": Exit Do'ou Exit Sub
Loop
Next'le next de For b
Next'le next de For k
Feuil3.[J1:J100].ClearContents'efface en J
End Sub