Comment réaliser un tirage au sort

Bonjour,

Je souhaiterais effectuer un tirage au sort via Excel.

Je connais la formule : =Alea.Entre.Bornes

Mais sur une liste de 12 participants, en étirant la formule cette dernière ressort plusieurs fois certains chiffres compris entre 1 et 12.

Hors je souhaiterais que chacun des 12 chiffres soit associé à un seul participant.

Sauriez-vous comment procéder?

Merci d'avance pour votre aide

Martin.

Bonjour,

Proposition de fonction personnalisée :

Function TIRAGESELEC(n As Integer)
    Dim tabt(), tablo() As Integer, i%, m%, x%
    Application.Volatile False
    If n < 1 Then
        TIRAGESELEC = CVErr(xlErrNum)
        Exit Function
    End If
    m = Selection.Cells.Count
    ReDim tabt(1 To m)
    If m > n Then
        For i = n + 1 To m
            tabt(i) = CVErr(xlErrNA)
        Next i
        m = n
    End If
    ReDim tablo(n)
    For i = 1 To n
        tablo(i) = i
    Next i
    Randomize
    For i = 1 To n
        x = Int(n * Rnd + 1)
        tablo(0) = tablo(x)
        tablo(x) = tablo(i)
        tablo(i) = tablo(0)
    Next i
    tablo(0) = tablo(n)
    x = Int(n * Rnd + 1)
    For i = 1 To m
        tabt(i) = tablo((x - 1 + i) Mod n)
    Next i
    If Application.Caller.Rows.Count > 1 Then
        TIRAGESELEC = Application.Transpose(tabt)
    Else
        TIRAGESELEC = tabt
    End If
End Function

La fonction est à placer dans un module Standard. (Faire Alt+F11 pour ouvrir l'Editeur VBA, clic droit dans le volet Explorateur de Projets à gauche, Insertion > Module, et dans le module coller le code.

Utilisation, comme toute fonction Excel, celle-ci étant matricielle :

Sélectionner une plage de cellules sur une ligne ou sur une colonne, nombre de cellules correspondant au nombre de tirages que l'on veut faire, indiquer en argument le nombre d'éléments sur lesquels on tire (il doit logiquement être supérieur ou égal au nombre de cellules sélectionné), exemple :

=TIRAGESELEC(12)

une plage de 12 cellules ayant été sélectionnée.

On valide par Ctrl+Maj+Entrée et les nombres 1 à 12 apparaissent aléatoirement dans les 12 cellules, sans doublon.

(Ne se recalcule pas lors des recalculs automatiques...)

Cordialement.

bonjour,

une manière de faire en pièce jointe

344tirage-au-sort.xlsx (8.73 Ko)
Rechercher des sujets similaires à "comment realiser tirage sort"