Faire un récap de 2 tableaux pour évaluer charge de travail
Bonjour à tous,
Je bloque depuis plusieurs heures sur une problématique (bien que j'ai pas mal cherché de pistes sur l'aide du site), du coup je me permet de solliciter votre aide qui me sera précieuse...
J'ai fait un visuel en dessous pour essayer d'expliquer le besoin.
J'ai un premier tableau avec une liste de personnes et une liste de projets. Chaque personne peut avoir un rôle A B ou C sur un projet (ou ne pas y participer). J'ai un 2eme tableau avec les temps des projets (exemple : le projet 1 dure le Mois 1 et le Mois 2).
Je souhaite visualiser dans un autre onglet la charge pour chaque personne par mois.
Pour celà, j'aimerai que s'affiche tous les projets sur laquelle la personne choisie participe et que sur les projets considérés, le "X" soit remplacé par le rôle concerné. Cf exemple avec le Nom 2.
Je pensais sélectionner la personne avec une liste déroulante, mais pas sûr qu'une macro se lance automatiquement en changeant le choix dans la liste déroulante
Le nombre de projets est variable au fil du temps (env une centaine)
Le nombre de personnes est variable (env une centaine) => Je dois pouvoir changer facilement la plage de recherche des noms, même si ca restera ponctuel. S'il s'agit juste de 2 cases à modifier dans deux cases excel pour dire que la 1ere colonne est la "Z" et la dernière la "BB" et que la macro (si besoin) va chercher ces 2 cases pour définir la plage, ca me va très bien !
Le temps est fixe (36 colonnes)
Ce qui me bloque globalement dans un premier temps, c'est que je ne sais pas comment faire en sorte qu'excel fasse le recherchev sur la bonne colonne...
J'ai mis le fichier en copie. C'est une version simplifiée du fichier final, pour que la compréhension soit plus simple.
Merci d'avance !
Alexandra
Bonjour,
J'ai cherché une solution par formules dans un premier temps (avant de voir que tu parlais de macro, à la fin de ton message) ... tu verras bien si ça convient.
Je n'ai pas compris, par contre, ton histoire de changer la plage de recherche, si besoin (comme tes deux tableaux sont l'un à côté de l'autre, ça va être compliqué d'ajouter des noms?) Bref, en fonction de la solution, tu réexpliqueras les zones d'ombre.
En C5 de la feuille utilisation, inscris:
=SI($B5="";"";SI(INDEX(Global!$B$13:$G$30;EQUIV($B5;Global!$A$13:$A$25;0);EQUIV(C$4;Global!$B$12:$G$12;0))="X";INDEX(Global!$J$13:$O$30;EQUIV($B5;Global!$I$13:$I$25;0);EQUIV($A$1;Global!$J$12:$O$12;0));""))recopie ensuite vers le bas et la droite.
Peut-être qu'on peut faire plus simple, mais comme je ne sais pas si j'ai bien compris ...
Bonjour à tous,
un essai également voir si cela peut te convenir.
Cordialement.
Merci à vous 2, c'est génial !
Je parlais de Macro car je ne pensais pas possible de le faire par formule...
Le point qui n'était pas clair U.milité :
En fait, je souhaite faire en sorte qu'on puisse mettre à jour facilement La plage de colonnes J-P, car je peux rajouter des noms ou rajouter des colonnes avant de commencer la liste de noms
La solution de Bigdaddy de l'appeller "Qui_nom" me semble répondre à cette problématique (j'ai vu qu'on pouvait modifier la plage via Ctrl-F3) => Peut etre est ce possible de faire un bouton qui a le meme effet que Ctrl-F3 ?
Aussi pensez vous qu'on peut masquer en automatique les projets qui ne concernent pas la personne, sans faire une macro ou devoir faire un filtre manuel ? Sinon je fais une macro pour filtrer...
Si c'est le cas, j'aboutis exactement à ce que je souhaitais !
Merci beaucoup en tous cas !
Bonsoir alexela, bigdaddy154,
Pour le nombre variable de noms (si j'ai bien compris) on peut aussi utiliser des formules pour nommer les plages de cellules. La plage Qui_nom, utilisée par bigdaddy, peut être définie comme faisant référence à
=DECALER(Global!$J$12;;;;NBVAL(Global!$J$12:$DZ$12))La plage devient "dynamique" et s'étend ou se réduit en fonction du nombre de noms renseignés de J12 à DZ12 (ce qui fait 121 colonnes et "couvre" en principe ta centaine de noms potentiels)
Pour ce qui est de n'afficher que les projets qui concernent la personne, tu peux essayer en B5
=SIERREUR(INDEX(Global!$I$13:$I$30;PETITE.VALEUR(SI(DECALER(Global!$J$13:$J$30;;EQUIV($A$1;Qui_nom;0)-1)<>"";LIGNE(Global!$J$13:$J$30)-12);LIGNES($1:1)));"")Attention: formule matricielle, à valider avec Ctrl+Shift+Enter
Merci encore, je vais essayer tout ça !