Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Tirage aléatoire selon critère

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

SolarMax

XLDnaute Nouveau
Bonjour,

Mon problème est assez simple je pense, mais je n'arrive pas à trouver une réponse malgré des recherches sur internet
Il s'agit de transformer la pseudo requête suivante en fonction excel :

Select Random(Colone1) Where Colone2 = "1" or where Colone2 = "2"

Ou encore, dans une colonne contenant des prénoms masculin et féminin, comment sortir au hasard un prénom masculin ou neutre (Dominique par exemple), identifiés comme tel par une valeur dans la colonne adjacente : 0=féminin, 1=masculin , 2=neutre.

L'usage d'une fonction est impératif, pas de macros.

Merci pour vos réponses!
 
Dernière édition:
Re : Tirage aléatoire selon critère

Bonjour SolarMax,

Je viens d'élaborer un modèle assez simple. Tu as une liste avec 100 noms (de Nom1 à Nom100) avec leur genre respectif, féminin ou masculin.
Tout en haut, tu as la possibilité de choisir 0, 1 ou 2 pour filtrer le tirage aléatoire.
Une fois que tu as spécifié le genre, tu fais un tri par genre (croissant pour Féminin, décroissant pour masculin) puis le nom aléatoire est choisi en rouge.
Pour faire un nouveau tirage, tu te places sur une cellule vide et tu appuies sur "Suppr" pour relancer le tirage.

Je suis désolé de devoir imposer un tri dans ma méthode, mais je ne vois pas d'autre solution pour faire un tirage au sort sans macro.

En espèrant que cela te convienne, bonne journée 🙂
 

Pièces jointes

Re : Tirage aléatoire selon critère

Super, merci NezQuiCoule!

Ca m'a bien aidé.

Je précise qu'il me faut une seule fonction et qu'il faudrait que je puisse faire aussi bien un " where colonne2 = 0 or colonne2 = 1 " qu'un " where colonne2 = 0 or colonne2 = 2 " ou un "" where colonne2 = 1 or colonne2 = 2 " dans l'idéal.

Mais le principe du tri m'a mis sur la bonne voie, et j'arrive à cela

=INDEX($C$2:$C$8; EQUIV(2;$B$2:$B$8;0)+ENT(ALEA()*NB.SI($B$2:$B$8;2)))

Valeurs en C
Index en B
sur 8 lignes ici
on recherche sur index 2 ici
 
Re : Tirage aléatoire selon critère

Bonjour SolarMax, NezQuiCoule,

Un essai sans tri avec une formule matricielle (j'ai repris le fichier de NezQuiCoule - que je remercie 🙂).

Formule matricielle :
Code:
=INDEX(B4:B103;PETITE.VALEUR(SI(A4:A103=$E$2;LIGNE(A4:A103)-3);1+ENT(ALEA() * NB.SI(A4:A103;$E$2))))
 

Pièces jointes

Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…