Pb Excel : transformation données L vers C

1977franck Messages postés 2 Statut Membre -  
1977franck Messages postés 2 Statut Membre -
Bonsoir,

J'aimerais pourvoir faire un copier-coller de ma cellule E22 (onglet Synthèse) sur la colonne (vers E23, E24, etc...) et que la formule de calcul soit maintenue avec uniquement une modification des colonnes de référence :
=SOMME.SI('VENTES - Détails'!$A:$A;$B$9;'VENTES - Détails'!J:J)+SOMME.SI('VENTES PART - Détails'!$A:$A;$B$10;'VENTES - Détails'!J:J)+SOMME.SI('VENTES - Détails'!$A:$A;$B$11;'VENTES - Détails'!J:J)+SOMME.SI('VENTES PART - Détails'!$A:$A;$B$12;'VENTES - Détails'!J:J)+SOMME.SI('VENTES - Détails'!$A:$A;$B$13;'VENTES - Détails'!J:J)

Exemple : En E23 : J:J devient K:K, en E24 K:K devient L:L, etc......

Merci par avance si vous avez la solution.
(Fichier allègé dans sa présentation pour vous faciliter la compréhension mais liste de produits très longue en réalité sur fiche synthèse).

Fichier dispo chez ci-joint.fr : http://www.cijoint.fr/cjlink.php?file=cj201010/cijwzzXo09.xls
A voir également:

1 réponse

eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 281
 
Bonjour,

en E22 remplace :
'VENTES - Détails'!J:J
par :
DECALER('VENTES - Détails'!J:J;0;LIGNE()-22)

mais ça va faire un peu long comme formule...

A la place tu peux te définir un nom (source par exemple) avec :
=DECALER('VENTES - Détails'!J:J;0;LIGNE()-22)
(contrôle ton nom après validation, excel s'amuse souvent à rajouter des $ ou des " ")

Ta formule devient :
=SOMME.SI('VENTES - Détails'!$A:$A;$B$9;source)+SOMME.SI(

eric
1
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 281
 
Bonjour,

L'explication suite à ton mp

En fait je viens de voir que je m'étais trompé en collant la formule. Je t'ai mise celle de test (je ramenais une valeur pour voir si j'étais dans la bonne colonne), tu n'as pas besoin de Index().
J'ai modifié mon précédent post en conséquence.

Donc remplacer :
'VENTES - Détails'!J:J
par :
DECALER('VENTES - Détails'!J:J;0;LIGNE()-22)

idem si tu passes par la définition d'un nom.

decaler(ref;nblig;nbcol) permet de décaler une référence ref de nlig lignes et ncol colonnes.
Ton besoin :
En E23 : J:J devient K:K, en E24 K:K devient L:L, etc......
Si on prend J:J comme ref, pour la ligne 22 il te faudra un décalage de 0 colonne, en ligne 23 un décalage de 1, etc
ligne() permet de récupérer le n° de ligne où est inscrite la formule.
L'offset colonne nbcol est donc LIGNE()-22
et nblig=0

D'autre part je n'avais pas vu que tu avais joint un fichier. A mon avis il y a une erreur...
Ta formule finale devrait plutôt être :
=SOMME.SI('VENTES - Détails'!$A:$A;$B$9;DECALER('VENTES - Détails'!J:J;0;LIGNE()-22))+SOMME.SI('VENTES - Détails'!$A:$A;$C$9;DECALER('VENTES - Détails'!J:J;0;LIGNE()-22))+SOMME.SI('VENTES - Détails'!$A:$A;$D$9;DECALER('VENTES - Détails'!J:J;0;LIGNE()-22))+SOMME.SI('VENTES - Détails'!$A:$A;$E$9;DECALER('VENTES - Détails'!J:J;0;LIGNE()-22))+SOMME.SI('VENTES - Détails'!$A:$A;$F$9;DECALER('VENTES - Détails'!J:J;0;LIGNE()-22))

à recopier vers le bas
eric
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 281
 
de rien 1977franck !!!!
0
1977franck Messages postés 2 Statut Membre
 
Eric,

Me revoici après qq jours d'absence. Je te remercie vivement et vais essayer la formule que tu me proposes.

A bientôt
0