Excel

j.sparo83 Messages postés 109 Statut Membre -  
j.sparo83 Messages postés 109 Statut Membre -
Bonjour,

Je voudrais faire la chose ssuivant sur excel 2003:

Une base de données qui contient bcp d'info, j'ai une colonne A contenant des categories et une colonne B contenant leur valeur.

Sachant que : 1 categorie peut avoir plusieurs valeur du style :

Cellule A Cellule B
Categorie 1 val1
Categorie 1 val 2

Mon but est d'afficher ce qui suit :

Cellule Z Cellule R
Categorie1 val1,val2.....
Categorie2 val2.......
Categorie3 val5.....

Est ce possible de faire cela?

Merci mes amis

4 réponses

Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 448
 
Bonsoir
quelque chose dans ce genre?
http://www.cijoint.fr/cjlink.php?file=cj201110/cijmcsZZb0.xls
crdlmnt
0
j.sparo83 Messages postés 109 Statut Membre
 
merci beaucoup,,mais peux-tu m'expliquer la commande car je n'ai pas tres bien compris (je suis débutant sur excel)

=SI(COLONNE()-5>NB.SI($A:$A;$E2);"";INDEX($B:$B;EQUIV($E2&"_"&COLONNE()-5;$C:$C;0)))

Merci
0
Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 448
 
Re

dans la colonne C la formule code en fonction du nombre de fois où la ref se trouve en colonne A au dessus de la ligne ou elle se trouve.

dans le tableau d'édition, la formule

=SI(COLONNE()-5>NB.SI($A:$A;$E2);"";INDEX($B:$B;EQUIV($E2&"_"&COLONNE()-5;$C:$C;0)))

COLONNE() renvoi le N° de colonne où se trouve la formule soit en colonne F 6
donc COLONNE()-5 est égal à 1 en colonne 6, 2 e colonne 7 etc...

NB.SI($A:$A;$E2) compte le nombre de fois ou se trouve l code inscrit en E2 dans la colonne A
si le N° donné par la position COLONNE()-6 est supérieur à ce nombre, la formule renvoie une cellule vierge

sinon:
INDEX($B:$B;EQUIV($E2&"_"&COLONNE()-5;$C:$C;0)))

INDEX(Champ;Ligne;colonne) renvoi la valeur du champ correspondant aux coordonnées données par les N° de ligne et de colonne_du champ cette fois, pas de la feuille)
$E2&"_"&COLONNE()-5
reconstitue le texte du code à chercher dans la colonne C

EQUIV($E2&"_"&COLONNE()-5;$C:$C;0) recherche dans la colonne C le n° de ligne du champ où se trouve c e texte reconstitué *
ce texte change en incrémentant la formule vers la droite, puisque la valeur COLONNE()- 5 change avec la position de la formule

pour comprendre plus facilement, faites ces tests si ça vous intèresse:
entrez des éléments de la formule dans des cellules pour voir l'évolution, par exempe en colonne D
=NB.SI(A:A;E2)
=COLONNE()-3
=E2&"_"&COLONNE()
=EQUIV(E2&"_"COLONNE()-3
=INDEX(B:B;résultat de la formule précédente)
ça devrait vous aider à comprendre

espérant avoir été assez clair, ce n'est pas toujours facile.

bon courage
crdlmnt
0
j.sparo83 Messages postés 109 Statut Membre
 
Merci beaucoup,

2eme épisode:

et si je voudrais ajouter une condition du genre (prendre seulement cellte du mois de septembre?)
0