Bonjour au forum,
Pour un tirage de chiffres aléatoires, je ne pige pas bien cette ligne de déclaration
Dim Tableau(120) As Integer
Je vois bien que le 120 indique la limite maxi, mais est-t-on obligé de déclarer comme çà ?
Dans mon cas, j'ai besoin de sortir de 24 à 230 chiffres selon les besoins.
ce nombre correspond à:
Nbr = WorksheetFunction.CountA(Range("ListeAttente"))
Si je mets Dim Tableau(230), cela ne risque t-il pas d'alourdir inutilement la macro ?
Voici le code
Sub Tirage_EquipAléatoire() 'code pompé et adapté à partir d'une macro de Mytå
Dim Temp As Integer, Existe As Boolean
Dim i As Integer, J As Integer
Dim Tableau(120) As Integer, RDest As Range
Dim Nbr As Double, NbP$, TabL, Cel As Range, Top
Application.ScreenUpdating = False
Nbr = WorksheetFunction.CountA(Range("ListeAttente"))
NbP = Range("o4") 'joueurs par équipe
Set RDest = Range(Cells(4, 7), Cells(4, 6 + NbP))
TabL = WorksheetFunction.Floor((Nbr / NbP), 1) 'plancher lignes tableau
Range("g4:i300").ClearContents
Randomize
For i = 1 To Nbr
Existe = True
While Existe
Temp = Int(Nbr * Rnd + 1) 'entier
For J = 1 To Nbr
If Temp = Tableau(J) Then
Existe = True
Exit For
Else
Existe = False
End If
Next J
Wend
Tableau(i) = Temp
Next i
For i = 1 To Nbr
RDest(i).Value = Tableau(i)
Next i
Merci du coup de pouce
Bonne journée
Claude.