Résolu SOMMEPROD(.....((Décaler....; compter copier coller des cellule d'une feuille à l autre

ymanot

XLDnaute Junior
Bonjour les Barbatrucs
bonjour à tous

je cherche sans macro à recopier les noms de ma colonne B feuille "seance1" sur un recap situé sur une feuille "recap S1"
les informations recherchées sont :
- le numero de relai
- la couleur de la voie,
- la difficulté de la voie,
je cherche à compter les répétitions effectuées par le grimpeur et attribuer un nombre selon ce qu a fait l'individu.
pourriez vous m'aider svp.
merci
 

Fichiers joints

ymanot

XLDnaute Junior
Bonjour les Bébère,
Bonjour les Barbatrucs
Bonjour tout le monde

Merci pour votre réponse.
cela aide grandement...
Un petit soucis toutefois
lorsque je rajoute un nom dans ma liste de depart et qu 'ensuite je lui ajoute le relai 13 le recap ajoute le chiffre 13 et associe
3 types de voies differentes...

Maintenant est il possible en reprenant votre formule de faire en sorte de supprimer les doublons de noms tout en associant les codes couleurs à la bonne personne et sur 1 seule ligne ? (afin d'avoir un récapitulatif visible de l'ensemble de la séance pour chaque personne.
Merci beaucoup
 
Dernière édition:

danielco

XLDnaute Impliqué
Bonjour,

En créant une plage dynamique "PlageE" définie par :
VB:
=DECALER('SEANCE 1'!$B$2;;;NBVAL('SEANCE 1'!$B:$B)-1)
La formule en recap S1!B3, à recopier vers le bas est :
Code:
=SIERREUR(INDEX('SEANCE 1'!$B:$B;AGREGAT(15;6;LIGNE(PlageE)/ESTNA(EQUIV(PlageE;$B$2:B2;0));1));"")
Pas compris ppour la couleur. Peux-tu donner un exemple ?

Cordialement.

Daniel
 

ymanot

XLDnaute Junior
Bonjour Danielco
Bonjour les Barbatrucs
Bonjour a tous

Pour l'exemple en page séance 1 un élève va faire le relai 2 qui déclenchera la couleur rouge avec un code 5c.
Dans mon récap j ai déjà place pour le relai 2 les 2 codes couleur corresspondants.
La demande est
Si un élève passe en relai 2 sur les prises rouges le récap devra mettre 1 dans La colonne F
 

danielco

XLDnaute Impliqué
Bonjour,

Essaie, en C3, à recopier vers le bas et la droite :

VB:
=SOMMEPROD(('SEANCE 1'!$B$2:$B$11='recap S1'!$B3)*('SEANCE 1'!$F$2:$F$11='recap S1'!C$2))
Daniel
 

danielco

XLDnaute Impliqué
Oups, en insérant une ligne après la ligne 1 comportant les numéros de relais :

Code:
=SI(SOMMEPROD(('SEANCE 1'!$B$2:$B$11='recap S1'!$B4)*('SEANCE 1'!$F$2:$F$11='recap S1'!C$3)*('SEANCE 1'!$C$2:$C$11='recap S1'!C$2))=1;1;"")
Annotation 2019-10-13 124357.png

Daniel
 

ymanot

XLDnaute Junior
Bonjour Danielco
Bonjour les Barbatrucs
bonjour à tous

je pense avoir effectué les modifications mais
Le nom "EXEMPLE" feuille "recapS1" ne subit aucune modification
Lorsque je rajoute le nom baba et que celui ci effectue un relai celui ci n apparait pas

en outre depuis ces modifs ma case de recherche en K1 feuille "seance1"ne fait plus apparaitre ce que fait "exemple" ou alors les reponses sont erronnées.

pourriez vous m aidez svp
 

Fichiers joints

ymanot

XLDnaute Junior
Bonjour le FIl
j ai pu avancer sur es erreurs
apres avoir corrigé le probleme de recap sur K1

j ai constaté que l 'erreur sur la feuille "recap S1" provient des doublons (si un nom fait 2 fois la meme voie meme difficulté ca plante la recherche, donc si quelqu'un avait une idée pour evitr cette erreur ?

Ensuite j avais un probleme lié a la recherche avec les difficultés de relai, puisque "toute prise" n'etait pas repertorié sur la feuille "recapS1"
Maintenant c est chose faite mais le résultat n 'apparait toujours pas. Si quelqe'un pouvait m aider à effecteur la bonne modif

Enfin dans la feuille "recap S1" j ai toujours un probleme de recherche indéxée, puisque certains noms n 'apparaissent pas et d autre sont inscrits alors qu'ils n y sont pas, pourtant ma liste est issue d'une plage nommée.
si quelqu'un pouvait maider

voici donc mes 3 principaux problemes pour ce document.
merci pour vos recherches
 

Fichiers joints

danielco

XLDnaute Impliqué
Tu dois définir une plage dynamique des élèves. Par exemple "ListeB" avec la formule :

VB:
=DECALER('SEANCE 1'!$B$2;;;NBVAL('SEANCE 1'!$B:$B)-1)
La formule devient (en C4) :

Code:
=SI(SOMMEPROD((ListeB='recap S1'!$B4)*(DECALER(ListeB;;4)='recap S1'!C$3)*(DECALER(ListeB;;1)='recap S1'!C$2))=1;1;"")
Ç’aurait été plus simple si ton tableau de la feuille SEANCE 1 s'ajustait au nombre d'élèves.

Sinon, je ne comprends pas le reste. Donne des exemples.

Daniel
 

Fichiers joints

ymanot

XLDnaute Junior
Bonsoir daniel
Bonsoir le fil

J ai du rajouter un terme TP (toute prise) sur la feuile "recap S1) et sur tous les relais.
pensant copier et modifier seulement les colonnes concernéees, je me heurte à un echec.

SI(SOMMEPROD((ListeB='recap S1'!$B4)*(DECALER(ListeB;;4)='recap S1'!D$3)*(DECALER(ListeB;;1)='recap S1'!D$2))=1;1;"")
cette formule fonctionne bien avec les autres couleur de prises, mais j ai l'impression que n'ayant pas de couleur à donner a "TP"cela génère une erreur.

En outre lorsque j ai crée la liste il me lsemble que j ai fait en sorte que la liste s ajuste au fur et à mesure. elle dépend de ce qui est saisi sur la feuille "liste a saisir"
 

Fichiers joints

danielco

XLDnaute Impliqué
Bonjour,

la ligne 3 de la feuille recap s1reprend la difficulté. Je m'attends à trouver "4" et non pas "TP". Sinon, il faut une autre formule pour les colonnes TP.

Daniel
 

ymanot

XLDnaute Junior
Bonsoir le fil
Bonsoir Daniel

Dansl a continuité du document je me retrouve avec un récapitulatif erroné.
Je m explique
Lorsque je saisi 1 relai et une couleur de voie sur la feuille "séance1", s'inscrit sur la feuille "recapS1" le chiffre 1 correspondant au relai et sa couleur
Mais si je rajoute a nouveau pour le même élève le même relai même couleur, au lieu d avoir 2 tout s annule...

=SI(SOMMEPROD((ListeB='recap S1'!$B4)*(DECALER(ListeB;;4)='recap S1'!D$3)*(DECALER(ListeB;;1)='recap S1'!D$2))=1;1;"")

cette fomrule est utilisée sur la page "recapS1" sur la plage (C4:AY150)
y a til un ajout a faire pour que cette fomrule comptabilise aussi les doublons?
merci
 

danielco

XLDnaute Impliqué
En C4 :
VB:
=SI(SOMMEPROD((ListeB='recap S1'!$B4)*(DECALER(ListeB;;4)='recap S1'!C$3)*(DECALER(ListeB;;1)='recap S1'!C$2))>1;SOMMEPROD((ListeB='recap S1'!$B4)*(DECALER(ListeB;;4)='recap S1'!C$3)*(DECALER(ListeB;;1)='recap S1'!C$2));"")
Daniel
 

ymanot

XLDnaute Junior
Bonjour
et merci daniel pour cette formule
pour ceux qui reprendraient ce fil, j ai juste modifié cette partie de formule car elle ne comptait plus que ce qui etait superieur a 1 et ignorait les cellules qui comportaient 1.
(DECALER(ListeB;;1)='recap S1'!C$2))>0
Maintenant cette partie marche super !

En revanche lorsque je recopie l'ensemble de la page "recap S1" 4INCLUANT LES FORMULES sur les autreS "recap S2"
"recap S3"... en prenant soin de modifier le "S1" en "S2" puis "S3"... je me retrouve avec les memes recherches et le meme listing que celui inscrit sur ma page "recap S1"
lorsque je supprime le listing de "recap S1" il se copie juste en dessous sans reprendre celui que j ai crée sur la page "LISTE à SAISIR" qui se nomme "TabListing" donc l'ensemble de mes feuilles "seances.." ont une validatin de donnée nommée "=INDIRECT("TabListing[élèves]")"
Pouvez vous m'à comprendre?
 
Dernière édition:

ymanot

XLDnaute Junior
Bonjour Daniel
en regardant la feuille recap S2 on peut voir qu elle reprend la liste de nom de la liste recap s1 au lieu de reprendre le "tablist" sur la feuille "SEANCE 2" que j ai crée sur la feuille "liste a sasir".
et donc elle reprend aussi ce qui a été copié sur la feuille "recapS1 " a partir de la saisie sur la feuille "SEANCE 1"
je souhaitais juste copier les formules de la feuille "recap S1" sur les autres feuilles recap... en modifiant par rechercher/remplacer le nom de la feuille recap.
malheureusement je ne dois pas comprendre la formule qui rappelle la feuille seance.
 

Fichiers joints

danielco

XLDnaute Impliqué
En Recap S2 B4 :

Code:
=SI(INDEX(TabListing[élèves];LIGNE(A1))=0;"";INDEX(TabListing[élèves];LIGNE(A1)))
à recopier vers le bas. Pour la recopie, il s'agît d'une anomalie dans la saisie des formules. Tu peux les éliminer :

VB:
=SI(SOMMEPROD((ListeB=$B4)*(DECALER(ListeB;;4)=C$3)*(DECALER(ListeB;;1)=C$2))>0;SOMMEPROD((ListeB=$B4)*(DECALER(ListeB;;4)=C$3)*(DECALER(ListeB;;1)=C$2));"")
Daniel
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas