Listes automatique

Bonjour Chère Communauté Excel,

Quelqu'un pourrait-il m'aider avec le cas de figure suivant :

Dans mon tableau, des élèves inscrits à des cours. Dans la case variable J1, si je saisis le cours n° 1, j'aimerais que de H2 à H9 s'affichent les prénoms des élèves ayant choisi le cours 1 (peu importe si c'est en Cours 1 / Cours 2 / Cours 3).

Est-ce que Excel peut faire ça ? D'avance grand merci!

benupton

Bonjour,

Essayez ceci, changez le N° du cours en J1 pour obtenir la liste.

Cdlt

Bonjour,

Merci pour votre retour, malheureusement, ce n'st pas que je souhaite comme résultat.

Les colonnes C / D / E sont des cours que choisissent les personnes.

Si en J1, je saisi "1", j'aimerais avoir toutes les personnes qui ont choisi le cours n° 1, toute colonne C / D / E confondues.

D'avance, merci à tous!

Benupton

Bonjour,

C'est bien ce que fait ma macro, mais je pensais qu'il fallait y ajouter aussi le titre des colonnes C,D,E. En supprimant la ligne de code qui récupère les titres, vous obtenez bien uniquement, les noms des personnes concernées.

Revoici le fichier simplifié:

Cdlt

Merci beaucoup!

C'est génialement ça. J'essaie de comprendre votre démarche, car je ne maîtrise absolument pas les macros et la programmation VBA.

Savez-vous s'il existe une formule matricielle pour obtenir un tel résultat ?

D'avance merci!

Bonne nuit

cette matricielle est OK pour H2, à incrémenter vers le bas ;

=SIERREUR(INDEX($B$2:$B$11;PETITE.VALEUR(SI(($C$2:$E$11=$J$1)*1=1;LIGNE($B$2:$B$11)-1);LIGNE(1:1)));"")

Bonjour,
Doux Rêveur bonjour

en sachant qu'un test sous Excel = 1 si VRAI et 0 si FAUX on peut la simplifier comme ceci :
=SIERREUR(INDEX($B$2:$B$11;PETITE.VALEUR(SI($C$2:$E$11=$J$1;LIGNE($B$2:$B$11)-1);LIGNE(1:1)));"")

@ bientôt

LouReeD

Salut LouReeD,

bien vu !

J'étais parti d'une autre formule où j'avais eu besoin du *1.

Bonjour à tous!

Merci pour vos réponses... je suis désolé, je bloque toujours.

J'ai saisi vos formules dans H2 (avec incrémentation), et cela ne fonctionne pas que je change le numéro des cours en J1.

Je joins mon fichier exemple.

D'avance merci pour votre aide.

Benupton

Enlevez les "@" sur vos formules et validez avec la combinaison des trois touches [SHIFT]+[CTRL]+[Entrée]

@ bientôt

LouReeD

Je n'ai pas de "@" sur la formule.. ???

capture d ecran 2024 05 01 a 23 45 52

Moi :

image

ok alors avec la triple validation ? ce qui donne :

image

@ bientôt

LouReeD

C'est parfait, grâce à la triple validation! Merci mille fois!!!

Pardon, une dernière question : pourquoi une telle formule ne fonctionne pas sans la triple validation ? Je ne comprends le rôle des accolades.

D'avance merci et encore merci pour cette réponse.

Meilleures salutations,

Benupton

C'est ce que l'on appelle une formule matricielle.

Le résultat de cette formule est un tableau et ce dans chaque cellule où elle se trouve, c'est comme s'il y avait une colonne en profondeur dans chaque cellule.

Si vous regardez chaque formule il y a qu'un seul paramètre qui soit variable c'est LIGNE(1:1), c'est qui va faire afficher en première cellule le premier résultat, en deuxième cellule le deuxième résultat du tableau etc...une gestion d'erreur permet de cacher celle ci si l'on demande de renvoyer un résultat inexistant. La colonne s'adapte donc au nombre de valeurs.

@ bientôt

LouReeD

Merci infiniment pour votre aide et vos explications!

Bonjour,

Merci ! Merci @ vous pour le retour !

@ bientôt

LouReeD

Rechercher des sujets similaires à "listes automatique"