Nombre au hasard
riquet73
Messages postés
4
Statut
Membre
-
riquet73 -
riquet73 -
Bonjour,
J'ai un fichier client sous excel qui compte 2500 lignes, il faut que je fasse un questionnaire en tirant au hasard 200 lignes. Pourriez vous me donner une formule me permettant d'obtenir ce résultat.
J'ai office 2003. Merci par avance de votre aide
J'ai un fichier client sous excel qui compte 2500 lignes, il faut que je fasse un questionnaire en tirant au hasard 200 lignes. Pourriez vous me donner une formule me permettant d'obtenir ce résultat.
J'ai office 2003. Merci par avance de votre aide
A voir également:
- Nombre au hasard
- Nombre de jours entre deux dates excel - Guide
- Nombre facile - Télécharger - Outils professionnels
- Ascii nombre de caractères - Guide
- Gto nombre episode - Forum Cinéma / Télé
- Faites afficher avec un fond coloré les cellules qui contiennent une valeur comprise entre 250 et 350. quel nombre est dessiné en surbrillance ? ✓ - Forum Excel
4 réponses
Bonsoir,
Voici une methode, à toi de voir si elle te convient.
Dans une colonne vide sur la 1ère ligne qui t'interesse tu saisis =ENT(ALEA()*1000000) que tu recopies vers le bas pour tous les clients.
Ca attribuera un n° aléatoire à chacun, le nombre est choisis élevé pour limiter le risque de doublon.
Il faut figer ces n° maintenant par un copier / collage spécial 'valeur' sur toute la colonne.
Tu tries sur cette colonne et tu prends les 200 premiers.
eric
Voici une methode, à toi de voir si elle te convient.
Dans une colonne vide sur la 1ère ligne qui t'interesse tu saisis =ENT(ALEA()*1000000) que tu recopies vers le bas pour tous les clients.
Ca attribuera un n° aléatoire à chacun, le nombre est choisis élevé pour limiter le risque de doublon.
Il faut figer ces n° maintenant par un copier / collage spécial 'valeur' sur toute la colonne.
Tu tries sur cette colonne et tu prends les 200 premiers.
eric
Bonjour Riquet
Essaye ceci
Syntaxe : ALEA ()
Remarque : Pour générer un nombre réel aléatoire compris entre a et b, utilisez : ALEA()*(b-a)+a.
Exemples : Pour générer un nombre aléatoire entier supérieur ou égal à 1 mais inférieur à 100 : ENT(1+99*ALEA())
Extrait de http://www.grappa.univ-lille3.fr/polys/excel-2000-option2/poly008.html#toc47
voir : le hasard 8.10
Essaye ceci
Syntaxe : ALEA ()
Remarque : Pour générer un nombre réel aléatoire compris entre a et b, utilisez : ALEA()*(b-a)+a.
Exemples : Pour générer un nombre aléatoire entier supérieur ou égal à 1 mais inférieur à 100 : ENT(1+99*ALEA())
Extrait de http://www.grappa.univ-lille3.fr/polys/excel-2000-option2/poly008.html#toc47
voir : le hasard 8.10
Non perso je sais pas trop
Je cherches pour toi sur la toile
Regarde le dernier post de ce lien
http://forum.hardware.fr/hfr/WindowsSoftware/Stockage-Sauvegarde/tirage-aleatoire-excel-sujet_160967_1.htm
Je cherches pour toi sur la toile
Regarde le dernier post de ce lien
http://forum.hardware.fr/hfr/WindowsSoftware/Stockage-Sauvegarde/tirage-aleatoire-excel-sujet_160967_1.htm
merci balladur13 mais c'est du chinois pour moi
je te remercie pour ton aide, je joins un aperçu de mon fichier
Peux tu m'indiquez le mode opératoire?
Code Client Civilité abrégée Prénom Nom V3 : Complément d'adresse V4 : ligne adresse complète
540100929 M. LIONEL BOURGAU 159 rue du vieux rampart
540102546 M. JEAN GABRIEL CAVARLE
540103317 M. FABRICE BROUZE Chemin DE CHAVENTON
540102144 M. LUDOVIC DUCHENE grande rue
540101379 M. PATRICK GREGGIA Rue STE CATHERINE
540103372 M. STEPHANE PESANTI 29 Allée DU BOIBAN
540102451 M. DOMINIQUE MIGNOT
540102298 M. ALBIN ALVAREZ 81 Allée DES ARTISANS
540100843 M. CATHERINE CACHARD
540102437 M. JEAN LOUP CHATELLARD 35 Allée DES BOULEAUX
540100226 M. GILLES DIGARD
540100555 M. THIERRY JEULLAIN
540101185 M. SEBASTIEN MALVILLE 5
540100750 M. JEAN BAPTISTE MORES
540102828 M. FABIEN PALENI 193 Avenue DE SAVOIE
540102755 M. DOMINIQUE PIERREZ 254 Rue DU BELLACHAT
540101203 M. YOUCEF ZAIBOUCHE bp 9
540103321 M. DONATIEN BAULAT
540100648 M. MARC BOULENGER 7 LE GENEVRIER
540101202 M. CHRISTINE JOURNOT
540101629 M. GERALD ANDRE
540101971 M. JEAN LUC BERARD BERGERY VILLA LE GRAND PRE
540102070 M. DAMIEN CRESSEND 14 Place JOUX
540101966 M. CHRISTOPHE DUCHOSAL 540 Avenue DE TARENTAISE
540102430 M. MARC GOSTOLI 823 Rue DE LA TULIPE
540102332 M. GEOFFREY ROHR 454 Route DE VILLAROLAND
540101008 M. NATHALIE BERTHET la tour
540101258 M. MICHEL CHRISTIN LOT LA MOUDRU
540100439 M. ALAIN COURTIN
540100893 M. PASCAL GARCIA le plan
540103227 M. NICOLAS GRASSI 19 LA MOUDRU
540101790 M. MUARREM KAYGUSUZ Chemin DU MILIEU
540100095 M. GUILLAUME KHIRANI 41 Allée C
540100036 M. GABRIEL MONTESINOS
540101154 M. GERARD MORISSET
540101025 M. TONY SEGUIN Chemin DU PIED DES BOIS
540102457 M. THIERRY AGOGUE 19 Rue LOUIS BLERIOT
je te remercie pour ton aide, je joins un aperçu de mon fichier
Peux tu m'indiquez le mode opératoire?
Code Client Civilité abrégée Prénom Nom V3 : Complément d'adresse V4 : ligne adresse complète
540100929 M. LIONEL BOURGAU 159 rue du vieux rampart
540102546 M. JEAN GABRIEL CAVARLE
540103317 M. FABRICE BROUZE Chemin DE CHAVENTON
540102144 M. LUDOVIC DUCHENE grande rue
540101379 M. PATRICK GREGGIA Rue STE CATHERINE
540103372 M. STEPHANE PESANTI 29 Allée DU BOIBAN
540102451 M. DOMINIQUE MIGNOT
540102298 M. ALBIN ALVAREZ 81 Allée DES ARTISANS
540100843 M. CATHERINE CACHARD
540102437 M. JEAN LOUP CHATELLARD 35 Allée DES BOULEAUX
540100226 M. GILLES DIGARD
540100555 M. THIERRY JEULLAIN
540101185 M. SEBASTIEN MALVILLE 5
540100750 M. JEAN BAPTISTE MORES
540102828 M. FABIEN PALENI 193 Avenue DE SAVOIE
540102755 M. DOMINIQUE PIERREZ 254 Rue DU BELLACHAT
540101203 M. YOUCEF ZAIBOUCHE bp 9
540103321 M. DONATIEN BAULAT
540100648 M. MARC BOULENGER 7 LE GENEVRIER
540101202 M. CHRISTINE JOURNOT
540101629 M. GERALD ANDRE
540101971 M. JEAN LUC BERARD BERGERY VILLA LE GRAND PRE
540102070 M. DAMIEN CRESSEND 14 Place JOUX
540101966 M. CHRISTOPHE DUCHOSAL 540 Avenue DE TARENTAISE
540102430 M. MARC GOSTOLI 823 Rue DE LA TULIPE
540102332 M. GEOFFREY ROHR 454 Route DE VILLAROLAND
540101008 M. NATHALIE BERTHET la tour
540101258 M. MICHEL CHRISTIN LOT LA MOUDRU
540100439 M. ALAIN COURTIN
540100893 M. PASCAL GARCIA le plan
540103227 M. NICOLAS GRASSI 19 LA MOUDRU
540101790 M. MUARREM KAYGUSUZ Chemin DU MILIEU
540100095 M. GUILLAUME KHIRANI 41 Allée C
540100036 M. GABRIEL MONTESINOS
540101154 M. GERARD MORISSET
540101025 M. TONY SEGUIN Chemin DU PIED DES BOIS
540102457 M. THIERRY AGOGUE 19 Rue LOUIS BLERIOT
bonjour
à la demande de baladur13, je te mets cette macro qui permet de copier un certain nombre de lignes sélectionnées aléatoirement sur une feuille sur une autre feuille et elle avait été conçue paramétrable.
Donc il faut mettre le nom correct de tes feuilles.
Sur la feuille "resu" ou le nom que tu lui donnera, tu obtiendra les 200 lignes sélectionnées au hasard.
La macro doit être copiée sur la feuille ou dans un module
à la demande de baladur13, je te mets cette macro qui permet de copier un certain nombre de lignes sélectionnées aléatoirement sur une feuille sur une autre feuille et elle avait été conçue paramétrable.
Donc il faut mettre le nom correct de tes feuilles.
Option Explicit Sub sélection() Dim nbr_sel, nbr_elm, nbr_col, choix, pos, lig, i Dim inf_feu, inf_lig, inf_col Dim res_feu, res_lig, res_col nbr_sel = 200 ' le nombre de lignes à récupérer nbr_col = 20 ' le nombre de colonnes à recopier inf_lig = 2 ' les données sont en ligne inf_lig inf_col = 1 ' les données sont en colonne inf_col inf_feu = "données" ' les données sont sur la feuille inf_feu res_lig = 1 ' le résultat est en ligne res_lig res_col = 1 ' le résultat est en colonne res_col res_feu = "resu" ' le résultat est sur la feuille res_feu ' récupération du nombre de lignes de données nbr_elm = Worksheets(inf_feu).Cells(inf_lig, inf_col).End(xlDown).Row ' suppression précédente sélection Worksheets(res_feu).Cells(res_lig, res_col).CurrentRegion.ClearContents For lig = 0 To nbr_sel - 1 Do choix = Int(Rnd(1) * nbr_elm) + inf_lig For i = 0 To lig ' test doubles If Worksheets(res_feu).Cells(res_lig, res_col).Offset(i).Value _ = Worksheets(inf_feu).Cells(inf_lig, inf_col).Offset(choix - inf_lig).Value _ Then Exit For End If Next i Loop Until Worksheets(res_feu).Cells(res_lig, res_col).Offset(i).Value = "" ' copie des données sélectionnées Worksheets(res_feu).Cells(res_lig, res_col).Offset(lig).Formula = "=" & inf_feu & "!R" & choix & "C" Worksheets(res_feu).Cells(res_lig, res_col).Offset(lig).Resize(1, nbr_col).FillRight Next lig End Sub
Sur la feuille "resu" ou le nom que tu lui donnera, tu obtiendra les 200 lignes sélectionnées au hasard.
La macro doit être copiée sur la feuille ou dans un module