OVH Cloud OVH Cloud

fonction aléatoire ?

3 réponses
Avatar
em34
je n'arrive pas à utiliser la fonction "ALEAS"

je voudrais récupérer un tirage aléatoire de X valeurs sans doublons

3 réponses

Avatar
JB
Bonjour,

Hypothèse: Nb entre 1 et 1000
-En A2:
=ENT(ALEA()*1000)
-Recopier dans la colonne

Pour éliminer les doublons:

En A1:
Frapper Liste
-Données/Filtrer/Filtre élaboré
-Cocher copier vers un autre emplacement
-Cocher sans doublons
-Cliquer sur C1

Cordialement JB
Avatar
em34
merci pour ces infos,

toutefois la liste que je récupère une liste ne contient pas tous les
éléments

je précise ma question :
je dispose d'une liste de 32 nombres (par ex de 1 à 32) et je voudrais faire
un tirage aléatoire sans doublons de cette liste.
il semblerai que la fonction ALEAS avec un "S" corresponde à ma question
mais je n'arrive pas à la faire marcher.

merci

"JB" a écrit dans le message de news:

Bonjour,

Hypothèse: Nb entre 1 et 1000
-En A2:
=ENT(ALEA()*1000)
-Recopier dans la colonne

Pour éliminer les doublons:

En A1:
Frapper Liste
-Données/Filtrer/Filtre élaboré
-Cocher copier vers un autre emplacement
-Cocher sans doublons
-Cliquer sur C1

Cordialement JB
Avatar
AV
| je dispose d'une liste de 32 nombres (par ex de 1 à 32) et je voudrais faire
| un tirage aléatoire sans doublons de cette liste.

Sub zz_Tirage_Alea()
[A:A] = ""
nb = InputBox("Nbre de nombres à tirer ?", "")
B_Inf = 1: B_Sup = 32
If B_Inf = "" Or Not IsNumeric(B_Inf) Or B_Inf - Int(B_Inf) <> 0 _
Or B_Sup = "" Or Not IsNumeric(B_Sup) Or B_Sup - Int(B_Sup) <> 0 _
Or B_Sup < B_Inf Then
MsgBox "Non conformité des données saisies !"
Exit Sub
End If
For i = 1 To nb
Cells(i, 1) = Evaluate("int(rand()*(" & B_Sup & "-" & B_Inf & ")+" & B_Inf &
")")
If i > 1 Then
While Not Range(Cells(1, 1), Cells(i - 1, 1)).Find(Cells(i, 1)) Is
Nothing
Cells(i, 1) = Evaluate("int(rand()*(" & B_Sup & "-" & B_Inf & ")+" &
B_Inf & ")")
Wend
End If
Next
End Sub

AV