Tri sur plusieurs feuilles avec 1 condition sur une feuille récap
didlalalere34000
Messages postés
1
Statut
Membre
-
via55 Messages postés 14730 Date d'inscription Statut Membre Dernière intervention -
via55 Messages postés 14730 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Au secours, je commence à me ramollir du bulbe sur un problème excel que je trouvais simple.....à priori:
ma problématique :
j'ai plusieurs feuilles de groupes constitués de personnes participant à des stages avec dans une colonne une lettre désignant s'ils sont demi-pensionnaires, pensionnaires et/ou végan
donc
1 feuille groupe 1 avec x végan, y pension , z 1/2 pension
1 feuille groupe 2 avec x végan, y pension , z 1/2 pension
......etc
et une feuille récap trimestrielle qui rapatrie les données des végan des feuilles précédentes
j'ai essayé plein de formules comme recherche v, index, equiv,....


merci de vos lumières
Au secours, je commence à me ramollir du bulbe sur un problème excel que je trouvais simple.....à priori:
ma problématique :
j'ai plusieurs feuilles de groupes constitués de personnes participant à des stages avec dans une colonne une lettre désignant s'ils sont demi-pensionnaires, pensionnaires et/ou végan
donc
1 feuille groupe 1 avec x végan, y pension , z 1/2 pension
1 feuille groupe 2 avec x végan, y pension , z 1/2 pension
......etc
et une feuille récap trimestrielle qui rapatrie les données des végan des feuilles précédentes
j'ai essayé plein de formules comme recherche v, index, equiv,....
merci de vos lumières
A voir également:
- Tri sur plusieurs feuilles avec 1 condition sur une feuille récap
- Comment faire un livret avec des feuilles a4 - Guide
- Comment faire un tri personnalisé sur excel - Guide
- Comment supprimer une feuille sur word - Guide
- Bruler feuille de laurier - Guide
- Feuille de pointage excel - Télécharger - Tableur
4 réponses
Bonjour
Il serait plus aisé pour obtenir une aide efficace d'envoyer un exemple de fichier plut^t qu'une image inexploitable! Fichier à poster sur cjoint.com, faire créer un lien, le copier et revenir le coller ici
Néanmoins essaie de :
1) dans chaque feuille ajouter en colonne U la formule : =NB.SI(A$9:A9;"V") étirée vers le bas
2) dans la feuille Recap dans la 1ere cellule uù retrourner un nom mettre la formule :=SI(LIGNES(A$2:A2)<=MAX(Feuil1!U:U);INDEX(Feuil1!E:E;EQUIV(LIGNES(A$2:A2);Feuil1!U:U;0));SI(LIGNES(A$2:A2)<=MAX(Feuil1!U:U)+MAX(Feuil2!U:U);INDEX(Feuil2!E:E;EQUIV(LIGNES(A$2:A2)-MAX(Feuil1!U:U);Feuil2!U:U;0));SI(LIGNES(A$2:A2)<=MAX(Feuil1!U:U)+MAX(Feuil2!U:U)+MAX(Feuil3!U:U);INDEX(Feuil3!E:E;EQUIV(LIGNES(A$2:A2)-MAX(Feuil1!U:U)-MAX(Feuil2!U:U);Feuil3!U:U;0));"")))
à étirer ensuite vers le bas
3) Bâtir des formules identiques pour retourner les autres infos en remplaçant E:E par B:B, C:C ....
Cdlmnt
Via
Il serait plus aisé pour obtenir une aide efficace d'envoyer un exemple de fichier plut^t qu'une image inexploitable! Fichier à poster sur cjoint.com, faire créer un lien, le copier et revenir le coller ici
Néanmoins essaie de :
1) dans chaque feuille ajouter en colonne U la formule : =NB.SI(A$9:A9;"V") étirée vers le bas
2) dans la feuille Recap dans la 1ere cellule uù retrourner un nom mettre la formule :=SI(LIGNES(A$2:A2)<=MAX(Feuil1!U:U);INDEX(Feuil1!E:E;EQUIV(LIGNES(A$2:A2);Feuil1!U:U;0));SI(LIGNES(A$2:A2)<=MAX(Feuil1!U:U)+MAX(Feuil2!U:U);INDEX(Feuil2!E:E;EQUIV(LIGNES(A$2:A2)-MAX(Feuil1!U:U);Feuil2!U:U;0));SI(LIGNES(A$2:A2)<=MAX(Feuil1!U:U)+MAX(Feuil2!U:U)+MAX(Feuil3!U:U);INDEX(Feuil3!E:E;EQUIV(LIGNES(A$2:A2)-MAX(Feuil1!U:U)-MAX(Feuil2!U:U);Feuil3!U:U;0));"")))
à étirer ensuite vers le bas
3) Bâtir des formules identiques pour retourner les autres infos en remplaçant E:E par B:B, C:C ....
Cdlmnt
Via
merci de votre réponse...
que j'essaie de mettre en application (je dis ...j'essaie !)
Bien évidemment j'avais cherché à joindre le fichier, sans trouver ici, et je ne connaissais pas le lien de cjoint.com
dont acte https://www.cjoint.com/c/HKui5rfGwQN
voici le fichier
bien cordialement
que j'essaie de mettre en application (je dis ...j'essaie !)
Bien évidemment j'avais cherché à joindre le fichier, sans trouver ici, et je ne connaissais pas le lien de cjoint.com
dont acte https://www.cjoint.com/c/HKui5rfGwQN
voici le fichier
bien cordialement
Bonjour
Alors en modifiant les formules pour tenir compte des 4 feuilles et du fait que certaines peuvent ne contenir aucun vegan
https://www.cjoint.com/c/HKumInn7eLY
Cdlmnt
Via
Alors en modifiant les formules pour tenir compte des 4 feuilles et du fait que certaines peuvent ne contenir aucun vegan
https://www.cjoint.com/c/HKumInn7eLY
Cdlmnt
Via
merci beaucoup de la solution, parce qu'effectivement çà fonctionne.
mais comme j'aime bien comprendre, là, je dois avouer je sèche sur le processus:
=> en col V à chaque formule V8 y est additionné pourquoi ?
car je serai bien incapable de reproduire cette solution sans en comprendre la logique et le texte.
en vous remerciant encore beaucoup
mais comme j'aime bien comprendre, là, je dois avouer je sèche sur le processus:
- => sur chaque feuille des groupes : en V8 pourquoi la formule Max de la feuille précédente ?
=> en col V à chaque formule V8 y est additionné pourquoi ?
- en feuille récap dans chaque cellule : pourquoi sierreur + la suite de la formule : j'ai compris qu'il s'agissait de la même concernant chaque feuille , mais si vous pouviez l'expliquer au moins concernant la feuille groupe 1.
car je serai bien incapable de reproduire cette solution sans en comprendre la logique et le texte.
en vous remerciant encore beaucoup
Pour pouvoir incrémenter de manière continue les V il faut tenir compte du dernier nombre de la feuille précédente donc du MAX
la formule NB.SI($A$9:A9;"V") compte le nombre de V dans la plage (ce qui donne 1 enV11 de groupe 3 par ex, auquel il convient d'ajouter le Max précédent reporté en V8 , ce max étant 2 le nombre affiché en V11 est alors 3, c'est la 3eme personne V de toutes les feuilles)
Ensuite dans le récap le début de la formule =SIERREUR(INDEX('groupe 1'!E:E;EQUIV(LIGNES($A$2:$A2);'groupe 1'!$V:$V;0)); recherche avec INDEX le nom en colonne E de groupe 1 en face d'u nombre en colonne V correspondant à la xieme ligne de la plage, ici on est en 1ere ligne du tableau on recherche donc le 1 en col V
si le nombre recherché n'existe pas (à la 4eme ligne ou on recherche le nombre 4 cela renvoie une erreur donc le SIERREUR fait en sorte qu'au lieu de renvoyer erreur on passe à une autre recherche similaire mais dans groupe 2 et sierreur même recherche dans groupe 3 et si encore erreur recherche dans groupe 4 et si toujours erreur (on a dépassé le nombre total de V) on fait afficher rien ("") au lieu de #N/A
A ta disposition pour d'autres renseignement
Cdlmnt
Via
la formule NB.SI($A$9:A9;"V") compte le nombre de V dans la plage (ce qui donne 1 enV11 de groupe 3 par ex, auquel il convient d'ajouter le Max précédent reporté en V8 , ce max étant 2 le nombre affiché en V11 est alors 3, c'est la 3eme personne V de toutes les feuilles)
Ensuite dans le récap le début de la formule =SIERREUR(INDEX('groupe 1'!E:E;EQUIV(LIGNES($A$2:$A2);'groupe 1'!$V:$V;0)); recherche avec INDEX le nom en colonne E de groupe 1 en face d'u nombre en colonne V correspondant à la xieme ligne de la plage, ici on est en 1ere ligne du tableau on recherche donc le 1 en col V
si le nombre recherché n'existe pas (à la 4eme ligne ou on recherche le nombre 4 cela renvoie une erreur donc le SIERREUR fait en sorte qu'au lieu de renvoyer erreur on passe à une autre recherche similaire mais dans groupe 2 et sierreur même recherche dans groupe 3 et si encore erreur recherche dans groupe 4 et si toujours erreur (on a dépassé le nombre total de V) on fait afficher rien ("") au lieu de #N/A
A ta disposition pour d'autres renseignement
Cdlmnt
Via