XL 2016 Question aléatoire sans doublon

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 !

Lulay

XLDnaute Nouveau
Bonjour,

J'essaie de créer un Questionnaire. Il y a 20 questions mais les personnes ne doivent répondre qu'à 10 questions parmi les 20.
J'ai créé ce fichier mais malheureusement, j'ai des questions qui se répète.
Est-ce quelqu'un peut m'aider ?
J'ai essayé la fonction UNIQUE qui pourrait me sortir 20 chiffres et ensuite ajouté aléa.entre.bornes pour que les chiffres soient distribués aléatoirement mais ça ne fonctionne pas. J'ai des questions qui se répètent.
J'aimerais y arriver sans vba.

Merci à l'avance de votre aide. Je joins le fichier.

Lu
 

Pièces jointes

bonjour,

Proposition avec PowerQuery. Pour tirer de nouvelles questions, clik-droit dans le tableau vert puis "Actualiser" ou cliquez sur le bouton "Actualiser tout" de l'onglet de ruban "Données"

PowerQuery:
let   
    Source = Excel.CurrentWorkbook(){[Name="Questions"]}[Content],
    Tirage = #table({"Tirage"},List.FirstN(List.Distinct(List.Transform({1..100}, each {Int64.From(Number.RandomBetween(0,19))})),10)),
    Questions = Table.TransformColumns(Tirage,{"Tirage", each Source{_}[Column1], type text })

in
    Questions

Voyez également les cellules "Question - nn" elle ne contiennent qu'un chiffre formaté par format personnalisé.
 

Pièces jointes

bonjour,

Proposition avec PowerQuery. Pour tirer de nouvelles questions, clik-droit dans le tableau vert puis "Actualiser" ou cliquez sur le bouton "Actualiser tout" de l'onglet de ruban "Données"

PowerQuery:
let  
    Source = Excel.CurrentWorkbook(){[Name="Questions"]}[Content],
    Tirage = #table({"Tirage"},List.FirstN(List.Distinct(List.Transform({1..100}, each {Int64.From(Number.RandomBetween(0,19))})),10)),
    Questions = Table.TransformColumns(Tirage,{"Tirage", each Source{_}[Column1], type text })

in
    Questions

Voyez également les cellules "Question - nn" elle ne contiennent qu'un chiffre formaté par format personnalisé.
Bonjour Hasco,
J'aimerais savoir comment tu as fait le tirage des 10 questions sur PQ.
Merci
1683471159768.png
 
Oui, il y a eut apparemment 3 icones qui ont été sélectionnés:
-Acceuil/combiner.
-Transformer/colonne texte et transf/colonne structurée.
Mais il y a jusqu'à 4 options aprés, qui elles ne sont pas sélectionnées (en rose).
 
Re,
Je ne vois pas de quoi vous parlez.
#table({"Tirage"},List.FirstN(List.Distinct(List.Transform({1..100}, each {Int64.From(Number.RandomBetween(0,19))})),10))
C'est une étape écrite à la main en langage M, le langage de power query, vous trouverez la description de chaque fonction dans la documentation microsoft :
la description du constructeur #table est en bas de la liste des fonctions de table.

Sinon ci-dessous, une version commentée mais je ne sais si c'est ce que vous voulez
VB:
let   
    // Récupération des 20 questions
    Source = Excel.CurrentWorkbook(){[Name="Questions"]}[Content],
    // Etablissement d'un tirage aléatoire de 10 nombre de 0 à 19
    Tirage = #table({"Tirage"},List.FirstN(List.Distinct(List.Transform({1..100}, each {Int64.From(Number.RandomBetween(0,19))})),10)),
    // Récupération des items de la source correspondants aux nombres tirés, par transformation des valeurs de la colonne.
    Questions = Table.TransformColumns(Tirage,{"Tirage", each Source{_}[Column1], type text })
in
    Questions
 
Vous l'avez pas tapé à la main le langage, alors vous avez cliquez ou aprés ?
Si, au risque de vous décevoir, je l'ai tapé à la main. Affichage, Editeur avancé.
L'interface utilisateur ne propose que les choses les plus courantes.
Si vous voulez faire des choses avancées, il vous faut apprendre les subtilités du langage M et coder à la mimine.
 
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

Discussions similaires

Réponses
12
Affichages
1 K
Retour