Posez votre question Signaler

Tirage aléatoire 5000 sur 10'000 [Résolu]

Xin - Dernière réponse le 19 déc. 2011 à 20:17
Bonjour,
Je suis en train de faire un travail d'étude et je ne suis pas très calé en Excel...
Bref, j'aimerais savoir comment faire sur Excel pour réussir à choisir 5000 prénoms sur 10'000 que j'ai à ma disposition aléatoirement.
Etant donné que ce ne sont pas des chiffres, j'ai pensé à mettre =NBVAL pour sélectionner toutes les cases... mais ça va me sélectionner QU'UNE seule adresse aléatoirement... alors que j'en aimerais 5000 sur 10'000.
Et recopier tous les noms entre guillemets dans la formule.... humm... non merci lool ^^
Merci pour vos réponses =)
Xin
Lire la suite 

Tirage aléatoire 5000 sur 10'000 »

8 réponses
Réponse
+0
moins plus
Bonjour,
Peut-être un peu tard !!
Sub Tirage5000()
Dim B(10000) As Boolean
Dim Nb As Integer, Tirage As Integer
    Randomize (Timer)
    While Nb < 5001
        Tirage = Int((10000 * Rnd) + 1)
        If Not B(Tirage) Then
            B(Tirage) = True
            Nb = Nb + 1
            Sheets("Feuil2").Cells(Nb, 1) = Sheets("Feuil1").Cells(Tirage, 1)
        End If
    Wend
End Sub
Adapter les noms des feuilles.
A+
xinoux- 18 déc. 2011 à 15:01
Hello Lermite222,

En fait je voulais une formule sur Excel.... C'est possible de faire ça directement sur Excel ?

Merciiiii pour tes infos et ton aide ^^

Xin (xinoux)
lermite222- 18 déc. 2011 à 17:14
Salut,
Possible sur Excel mais en VBA.
Pas possible en formule.
A+
xinoux- 18 déc. 2011 à 17:35
A d'accord, et pourrais-tu juste me dire comment faire sur MAC pour avoir VBA ? J'ai la version 2011... Merciiii =)
Ajouter un commentaire
Réponse
+0
moins plus
Il me semble que sur le 2011 pour Mac la possibilité de VBA est de retour?
Alors, Tu tape Alt+F11
Dan l'IDE de VBA (éditeur de macros) tu sélectionne >> Insertion >> Module >> Valider
Dans la fenêtre tu colle le code que je t'ai mis plus haut en adaptant les noms des feuilles, Feuil1 = la feuille où se situe tes 10000 noms, Feuil2 où tu veux que les 5000 noms soient inscrit.
Tu referme l'IDE
Dans la feuille Excel tu colle un bouton (Contrôle ActiveX)
Note: la configuration normale ne te donne pas accès à cette fonction, tu dois..
Clic sur le rond (haut gauche) d'excel.
En bas à droite >> clic sur Option d'Excel
Dans la partie "Standard" cocher la propriété > Afficher l'onglet Développeur.
OK
Et c'est dans ce ruban que tu va avoir >> Insérer.
Revenons à nos moutons.
Le bouton coller sur ta feuille tu double clic dessus.
La partie code de la feuille va s'ouvrir dans l'IDE avec écrit..
Private Sub CommandButton1_Click() 

End Sub


Au milieu tu met Tirage5000 pour avoir
Private Sub CommandButton1_Click() 
    Tirage5000 
End Sub

La première fois ça parait bien compliquer mais tu verras qu'avec le temps ce sera beaucoup plus simple.
Reste plus qu'a cliquer sur le bouton.
A+
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,

En supposant que les prénoms se trouve en A1:A10000 (sans doublon), sans VBA, avec plusieurs colonnes, on peut extraire 5000 prénoms aléatoirement (sans doublon).

en B1, à tirer jusqu'en B10000 :
=ALEA()

en C1, à tirer jusqu'en C10000 :
=RANG(B1;B:B;1)

en E1, à tirer jusqu'en E5000 :
=INDEX(A:A;EQUIV(LIGNE();C:C;0))

Cordialement
Patrice
xinoux- 19 déc. 2011 à 08:08
Ouiiiiiii !!!! Ca marche !!!!! Merci beaucoup Patrice, vous êtes la meilleure !!! ^^ C'est exactement ce que je voulais =) Trop bien !

Bonne journée à vous
Patrice33740- 19 déc. 2011 à 20:17
De rien

Patrice (pas Patricia !!!)
Ajouter un commentaire
Ce document intitulé « Tirage aléatoire 5000 sur 10'000 » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?