Génération d'une liste à partir de certaines indications dans une autre liste

spohyak

XLDnaute Nouveau
Bonjour à tous,

J'ai tourné le problème suivant dans tous les sens sans parvenir à mes fins (j'y avais déjà réfléchi l'an dernier) alors aujourd'hui je sollicite vos talents ... :)
J'ai une liste totale de participants à diverses activités. Quand un participant est inscrit à une activité j'appose un "x" dans la cellule au croisement de la personne et de l'activité.
J'ai ensuite un décompte du nombre de "x", jusque là tout va bien.

J'aimerais en fait réussir à générer une feuille d'appel, c'est-à-dire une liste pour chaque activité, automatiquement, à imprimer, des participants. Alors effectivement je peux sélectionner le bon filtre, mais il faut que je le fasse pour chaque activité, et chaque semaine, soit pour 17 activités et 40 semaines : 680 manipulations et lancements d'impression ... D'autant plus que si je lance toute l'impression en une fois pour la semaine, je peux imprimer 2 pages/feuille.

Alors je joints un fichier pour l'exemple, l'onglet 2 représentant les feuilles d'appel.
J'avais également pensé à faire ces feuilles d'appel sous word, mais je n'avais pas non plus trouvé de "liaison" possible entre les deux logiciels.

Voila voila, du coup si quelqu'un a une idée, je suis bien entendu preneur :)

Merci !
 

Pièces jointes

  • état des inscriptions.xlsx
    62.8 KB · Affichages: 39

CISCO

XLDnaute Barbatruc
Re : Génération d'une liste à partir de certaines indications dans une autre liste

Bonsoir

Le début du travail en pièce jointe.

Ce sont des formules matricielles, à valider donc avec ctrl+maj+entrer, ce qui fait apparaitre les { et } avant et après la formule.


@ plus
 

Pièces jointes

  • état des inscriptions.xls
    167 KB · Affichages: 61
  • état des inscriptions bis.xls
    164.5 KB · Affichages: 48
Dernière édition:

spohyak

XLDnaute Nouveau
Re : Génération d'une liste à partir de certaines indications dans une autre liste

Bonsoir,

Merci beaucoup CISCO ! C'est parfait et correspond tout à fait à mon utilisation !

Merci merci et bravo :)

(maintenant je vais étudier la formule et ces matrices héhé)
 

CISCO

XLDnaute Barbatruc
Re : Génération d'une liste à partir de certaines indications dans une autre liste

Bonjour

Ma proposition a deux défauts :
* il faut faire avec EQUIV(A$1... pour aller chercher le texte ADD Lundi, puis, pour l'activité suivante, avec EQUIV(A$15... pour ADD Mardi et ainsi de suite. Autrement dit, il faut une formule différente pour chaque activité ADD. Ce n'est pas très pratique, mais pas très dur quand même à adapter.
* Si il y a plus d'inscrits que de ligne dans l'activité, rien ne le signale. Si cela pose problème, on peut indiquer quelque part le nombre d'inscrits, ou mettre une mise en forme conditionnelle mettant en évidence un problème.

Si tu as besoin d'informations supplémentaires pour mieux comprendre ces formules, reviens poser tes questions.

@ plus
 

spohyak

XLDnaute Nouveau
Re : Génération d'une liste à partir de certaines indications dans une autre liste

Oh oui ce ne sont pas de gros problèmes : pour le premier, une fois que c'est fait, je n'y touche plus, pour le second il n'y aura pas non plus de soucis ...
Hmm mais en fait je ne comprends pas le fichier "bis". Le premier fichier donne pourtant satisfaction ?! Je vois qu'il est mention de "plageLundi" mais je ne maitrise pas cela et ne sais pas où on définit cette variable ... :)
Merci :)
 
Dernière édition:

CISCO

XLDnaute Barbatruc
Re : Génération d'une liste à partir de certaines indications dans une autre liste

Bonjour

Le second fichier sert juste à avoir des formules plus courtes. Pour définir ces noms, aller dans "Formules", puis "gestionnaire de noms" puis... tu comprendras tout seul... C'est tellement pratique qu'il ne faut pas s'en priver...

@ plus
 

spohyak

XLDnaute Nouveau
Re : Génération d'une liste à partir de certaines indications dans une autre liste

Ok impeccable :)
Bon j'avoue que je suis un peu perdu par la formule ... Car j'observe :

Colonne A :
=SI(LIGNES(A$7:A7)<=SOMME(SI(DECALER(Insc!A$2:A$595;;EQUIV(A$6;Insc!A$1:V$1;0)-1)="x";1));INDEX(Insc!B$1:B$595;PETITE.VALEUR(SI(DECALER(Insc!A$2:A$595;;EQUIV(A$6;Insc!A$1:V$1;0)-1)="x";LIGNE(Insc!D$2:D$595));LIGNES(Présence!A$7:A7)));"")

Colonne B :
=SI(LIGNES(A$7:A7)<=SOMME(SI(DECALER(Insc!A$2:A$595;;EQUIV(A$6;Insc!A$1:V$1;0)-1)="x";1));INDEX(Insc!C$1:C$595;PETITE.VALEUR(SI(DECALER(Insc!A$2:A$595;;EQUIV(A$6;Insc!A$1:V$1;0)-1)="x";LIGNE(Insc!D$2:D$595));LIGNES(Présence!A$7:A7)));"")

Du coup pour rajouter une colonne, pour la catégorie, je mets dans la colonne C :
=SI(LIGNES(A$7:A7)<=SOMME(SI(DECALER(Insc!A$2:A$595;;EQUIV(A$6;Insc!A$1:V$1;0)-1)="x";1));INDEX(Insc!D$1:D$595;PETITE.VALEUR(SI(DECALER(Insc!A$2:A$595;;EQUIV(A$6;Insc!A$1:V$1;0)-1)="x";LIGNE(Insc!D$2:D$595));LIGNES(Présence!A$7:A7)));"")

Mais ça ne fonctionne pas ... Je m'aperçois qu'il y a peut-être un problème avec les "{" en début et "}" en fin sur tes formules et je n'arrive pas à les mettre sur la formule des cellules de la colonne C ...

Va falloir vraiment que je me penche sur les matrices :)
 

CISCO

XLDnaute Barbatruc
Re : Génération d'une liste à partir de certaines indications dans une autre liste

Bonjour

Normalement, cela devrait fonctionner. Toutefois, deux remarques :
* Dans le fichier exemple que tu as mis sur le forum, les catégories sont dans la colonne E, pas dans la colonne D :)
* Il faut valider ces formules en appuyant sur les trois touches ctrl, maj et entrée, en même temps, ce qui donne les accolades, et non essayer d'écrire directement ces dernières dans la formule.

@ plus
 

Discussions similaires

Statistiques des forums

Discussions
312 109
Messages
2 085 386
Membres
102 881
dernier inscrit
Talib