Menu

Effectuer un tirage aléatoire en appliquant des filtres

- - Dernière réponse : ccm81
Messages postés
8947
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
21 mai 2019
- 15 mai 2019 à 21:19
Bonjour,

J'ai établi une liste de restaurants que moi et mes amis aimons fréquenter durant l'été. Cependant comme nous prenons un temps fou pour en choisir un, j'ai voulu créer un tirage au sort sur Excel. Cependant, nous avons des critères différents selon la journée, donc j'ai ajouté des filtres, comme la présence d'une terrasse (oui, non), le prix du restaurant (1 à 3, 3 étant les plus chers), la distance (1 à 3 également) et
le dernier filtre étant si nous sommes allé à ce restaurant dernièrement (oui, non).

Dans ma liste de base de restaurants il y en a actuellement 18. une fois les filtres appliqués, il est possible d'en avoir encore 10, par exemple. Alors je veux que mon tirage au sort se fasse à partir de cette liste de 10 restaurants seulement. Actuellement ma formule est celle-ci :

=INDEX(A5:A22;ENT(ALEA()*18)+1)

Malheureusement, une fois les filtres appliqués, le tirage se fait encore parmi les 18 restaurants sans égard aux filtres que j'ai appliqués. Comment puis-je procéder ?

Merci beaucoup de votre aide !
Configuration: Windows / Chrome 74.0.3729.108
Afficher la suite 

Votre réponse

2 réponses

Messages postés
23965
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
21 mai 2019
4586
0
Merci
Bonjour
un exemple à défaut d'avoir des références de vos données
liste en A2:A20
B2:B20 cotation critère 1
C2:C20 cotation critère 2
D2:D20 cotation critère 3

F2: valeur cherchée pour critère 1
F3: valeur cherchée pour critère 2
F4: valeur cherchée pour critère 3

en E2=SI(ET(B2=$E$2;C2=$E$3;D2=$E$4);ALEA();"_")

ensuite triez et filtrez selon la colonne F en éliminant le _


à noter pour info que ENT(ALEA()*18) peut vous donner des doublons
crdlmnt



Commenter la réponse de Vaucluse
Messages postés
8947
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
21 mai 2019
1558
0
Merci
Bonjour à tous les deux

Une autre solution via vba (macro)
https://www.cjoint.com/c/IEptrEa7p6B

clic-clic en G2 pour lancer la recherche de 3 propositions
Alt-F11 pour accéder au code

Cdlmnt
Commenter la réponse de ccm81