XL 2010 Besoin d'aide Excel pour Expert - récupérer données sur une autres feuille

oldum

XLDnaute Nouveau
Bonjour

Je cale sans même réussir à m'en sortir.

J'ai Excel 2007 et je n'arrive pas à trouver les bonnes formules... pourriez vous m'aider.

J'ai mis en rouge les données que j'aimerais voir apparaitre automatiquement sur la feuille Recap.
Je plus compliqué est d'obtenir la liste en bas qui ne prend en compte que les lignes où il y a des 1 ou 2 ou 3 dans la feuille 2MP3D

Le tout changent quand on met un autre chiffre dans le numéro de séquence (en haut)

Merci pour votre aide

Olivier
 

Pièces jointes

  • Pour aide Comp.xlsx
    46.9 KB · Affichages: 24

Phil69970

XLDnaute Barbatruc
Bonjour à tous

@oldum

Je te propose ce fichier

Je plussoie @gbinforme tes cellules fusionnées c'est une galère sans nom, de plus elles n'ont pas la même forme d'une feuille à l'autre. Tu l'aurais fait exprès que tu n'aurais pas fait mieux !!!

J'ai fait le fichier avec toutes TES cellules fusionnées
Si tu prends l'envie de les modifier tu m'oublies :oops: 🤣🤣

Tu peux choisir la séquence 1 ou 2 par le menu déroulant ;)

J'ai testé TON fichier avec MA MACRO et il fonctionne !!!
Merci de ton retour
 

Pièces jointes

  • Copie cellules fusionnees sur Feuil2 V1.xlsm
    60.4 KB · Affichages: 8

AtTheOne

XLDnaute Accro
Supporter XLD
Bonjour à toutes et à tous, bonjour @oldum , @Phil69970

J'écris en italiques bleues afin d'adoucir le ton de ce fil 🙂...
C'est grâce au travail de @Phil69970 que j'ai compris ta demande et comme tu parlais de formules j'ai refait l'exercice. Après tout on participe ici pour se faire chauffer les synapses, non ?

Comme souvent je me suis tourné vers les noms définis pour stocker les plages et les formules.
Liste des noms définis
NomDéfinitionObjet
Séquence=Recap!$D$3n° de la séquence dans la feuille récap
PasFiche=16pas entre 2 séquences dans la feuille 2MP3D
Dans la feuille 2MP3D :
Supports=DECALER('2MP3D'!$N$6;0;PasFiche*(Séquence-1))Support de la formation pour la séquence choisie
Activités=DECALER('2MP3D'!$A$11:$B$19;0;PasFiche*(Séquence-1))Liste des activités pour la séquence choisie (2 col)
TâchesProfessionnelles=DECALER('2MP3D'!$E$11:$F$19;0;PasFiche*(Séquence-1))Liste des tâches professionnelles pour la séquence choisies (2 col)
CompétencesDéveloppées=DECALER('2MP3D'!$A$22:$O$66;0;PasFiche*(Séquence-1))Liste des compétences dévellopées items inclus
TâchesProfessionnellesCochées=SI(INDEX(TâchesProfessionnelles;;1)="x";
DECALER(INDEX(TâchesProfessionnelles;;1);0;1);
"")
Tâches professionnelles si cochée,
sinon vide
ActivitésCochées=SIERREUR(
RECHERCHEV(GAUCHE(TâchesProfessionnellesCochées;TROUVE("-";TâchesProfessionnellesCochées;1)-1)&"*";
Activités;
1;
FAUX);
"")
Activités correspondant aux tâches cochées,
sinon vide
nbCompétencesCochées=NB.SI(DECALER(CompétencesDéveloppées;0;2);">0")Nombre de compétences dévellopées cochées
idxCompétencesCochées=SI(
DECALER(CompétencesDéveloppées;0;2;;1)>0;
LIGNE(CompétencesDéveloppées)-LIGNE(DECALER(CompétencesDéveloppées;-1;0;1;1));
1+LIGNES(CompétencesDéveloppées))
Index des lignes cochées,
sinon Nb compétences +1 (objectif fonction PETITE.VALEUR)
Dans la feuille Recap :
RécapCDév=Recap!$B$18:$B$28Liste complète des compétences développées (les libellés)
lgnRécapCDév=DECALER(RécapCDév;LIGNE()-LIGNE(DECALER(RécapCDév;0;0;1;1));0;1;1)Compétence développée de la ligne courante
PesageCompétences=SOMME(SIERREUR(CHERCHE(GAUCHE(lgnRécapCDév;TROUVE(" - ";lgnRécapCDév)-1)&"? - ";
DECALER(CompétencesDéveloppées;0;3;;1);
1)
*DECALER(CompétencesDéveloppées;0;2;;1);
0))
Pesage de la compétence de la ligne courante
RécapItemsCDév=Recap!$B$30:$B$41Plage cible des items des compétences développées
ItemsCompétencesCochés=SI(LIGNE()-LIGNE(DECALER(RécapItemsCDév;0;0;1;1))<nbCompétencesCochées;
INDEX(DECALER(CompétencesDéveloppées;0;3;;1);
PETITE.VALEUR(idxCompétencesCochées;LIGNE(Recap!$B27)-LIGNE(DECALER(RécapItemsCDév;0;0;1;1))+1)
);
"")
Libellé de l'item de compétence dévelopée coché,
sinon vide
PoidsItemCompétences=SIERREUR(INDEX(DECALER(CompétencesDéveloppées;0;2;;1);EQUIV(ItemsCompétencesCochés;DECALER(CompétencesDéveloppées;0;3;;1);0));"")Poids de chaque item de compétence coché
Voir également la feuille "Noms définis"

La feuille "Recap" affiche les données de la séquence choisie (nom "Séquence" pour la plage Recap!$D$3)
Le nom "Pas" indique le nombre de colonnes pour passer d'une séquence à la suivante. Ici il vaut 16.
(Les séquences doivent être consécutives de gauche à droite, on peut en ajouter en respectant le pas et la mise en page de la première.)

  • Le nom "Supports" pointe vers le libellé du support
  • Le nom "Activités" reprend les libellés des activités (1 col)
  • Le nom "TâchesProfessionnelles" reprend les cochages et les libellés des tâches professionnelles (2 col)
  • Le nom "CompétencesDéveloppées" reprend la liste complète des compétences avec libellés, coches, pesage des items de compétence, libellés de ces items et colonne "Comp."
Les plages des 4 noms précédents se décalent avec le N° de la séquence choisie dans la feuille "Recap"

Les autres noms sont des formules :
  • "TâchesProfessionnellesCochées" reprend les libellés des tâches cochées (valeurs vides si non cochés)
  • "ActivitésCochées" reprend les activités correspondant aux tâches cochées (vide si aucune tâche de l'activité n'est cochée)
  • "nbCompétencesCochées" compte le nombre d'item de compétence cochés
  • "idxCompétencesCochées" index des items de compétences cochés Si non cochés nombre d'items définis plus 1, ceci pour le traitement par la fonction PETITE.VALEUR (les items correspondant à cette valeur ne seront pas repris).
  • "RécapCDév" la liste des libellés des compétences sur la feuille "Recap"
  • "lgnRécapCDév" le libellé des la compétence pour la ligne courante
  • "PesageCompétences" la somme des pondérations des items de compétence pour la compétence courante
  • "RécapItemsCDév" la plage cible pour recueillir les items de compétence cochés
  • "ItemsCompétencesCochés" liste des libellés des items de compétence cochés, au delà du nombre d'items cochés chaîne vide.
  • "PoidsItemCompétences" pondération des items de compétence cochés courant

Bon c'est plus laborieux qu'avec les macros de @Phil69970, mais c'est uniquement avec des formules, ça permet d'évoluer vers plus de séquences, plus de tâches, plus de compétences et d'items moyennant l'adaptation des 4 premiers noms.

A noter que j'ai simplifié les formules de cochage des compétences à développer en fonction des tâches à remplir dans la feuille "2MP3D" :

par exemple la formule =SI(E11="x";"x";SI(E12="x";"x";SI(E13="x";"x";SI(E14="x";"x";SI(E15="x";"x";SI(E19="x";"x";" "))))))
devient
=GAUCHE(E11&E12&E13&E14&E15&E19;1)

Voir pièce jointe
A bientôt
 

Pièces jointes

  • Fiches Séquences Formation AtTheOne.xlsx
    51 KB · Affichages: 3

Phil69970

XLDnaute Barbatruc
Bonjour à tous

Bravo Alain pour le tout formule 👍👍;)

Juste une précision pour le demandeur :
ça permet d'évoluer vers plus de séquences, plus de tâches, plus de compétences et d'items moyennant l'adaptation des 4 premiers noms.
Mon code anticipe bien plusieurs séquences mais j'ai mis volontairement la liste de validation à 2 car le demandeur n'a que 2 séquences dans son fichier mais facilement modifiable à X séquences (le pas "latéral" est prévu dans mon code )

Pour les taches j'avoue que je n'y ai pas trop pensé mais on est limité par le pavé "savoir associé"

1727370433682.png


Mais je pense que l'on ne reverra jamais le demandeur vu que je n'ai eu aucun retour et il y a aucune connexion du demandeur depuis !!! :mad: :mad:
 

AtTheOne

XLDnaute Accro
Supporter XLD
Re ...
Mon code anticipe bien plusieurs séquences mais j'ai mis volontairement la liste de validation à 2 car le demandeur n'a que 2 séquences dans son fichier mais facilement modifiable à X séquences (le pas "latéral" est prévu dans mon code )
Oui phil, j'avais vu, et ton code m'a bien aidé dans la compréhension du problème. 👍

Quant au pavé "SAVOIRS ASSOCIES" on devrait pouvoir paramétrer cela assez facilement avec une table dans une autre feuille, pourvu qu'on en connaisse les régles ...

Et si on ne revoit pas le demandeur, pas grave, je me suis bien amusé.🤒

À bientôt
 

Discussions similaires

Statistiques des forums

Discussions
314 013
Messages
2 104 552
Membres
109 078
dernier inscrit
Nikitoklass