|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre régulier
![]() Inscription : février 2007 Messages : 247 ![]() |
Bonjour à tous,
J'ai un tableau d'une centaine de ligne. En colonne A une suite de date chronologique En colonne C des reférences diverses et variées En colonne H des montants je souhaite soustraire le dernier montant avec le premier montant disponible pour une référence donnée : Par exemple je choisi comme référence "BAAR5" cette référence apparait plusieurs fois dans le tableau a differentes dates, et calculer la difference de montant : Montant date Max ou la ref apparait - montant date Min ou la ref apparait je ne sais pas si je suis tres clair et précis, n'hésitez pas a me demander plus d'explication, a mon sens il faudrait utiliser la fonction Index et/ou equiv merci de votre aide |
|
|
00
|
|
|
#2 |
|
Membre expérimenté
![]() Enseignant Inscription : novembre 2009 Messages : 350 ![]() |
Bonjour à tous,
En supposant que la référence recherchée est en $J$1, mets les deux formules suivantes (la première matricielle en $K$1 et la deuxième n'importe où): Première formule matricielle en K1 (valider par Ctrl + Maj + Entree): Code :
=MAX(SI($C$2:$C$1000=$J$1;$A$2:$A$1000)) Code :
=INDEX($H:$H;EQUIV($K$1;$A:$A;0))-INDEX($H:$H;EQUIV($J$1;$C:$C;0)) Code :
=INDEX($H:$H;EQUIV(MAX(SI($C$2:$C$1000=$J$1;$A$2:$A$1000));$A:$A;0))-INDEX($H:$H;EQUIV($J$1;$C:$C;0)) Cordialement |
|
|
00
|
|
|
#3 |
|
Membre régulier
![]() Inscription : février 2007 Messages : 247 ![]() |
Ca m'ai l'air tout bon, ca fonctionne bien, je nai plus qu'a essayer de la comprendre.
une petite question, pourquoi avec MIN ca ne fonctionne pas pour avoir la date la plus ancienne ? Code :
=MIN(SI($C$2:$C$1000=$J$1;$A$2:$A$1000)) |
|
|
00
|
|
|
#4 |
|
Membre expérimenté
![]() Enseignant Inscription : novembre 2009 Messages : 350 ![]() |
Bonjour à tous,
La formule Code :
=MIN(SI($C$2:$C$1000=$J$1;$A$2:$A$1000)) Cordialement |
|
|
00
|
|
|
#5 |
|
Membre régulier
![]() Inscription : février 2007 Messages : 247 ![]() |
il y a un souci avec la premiere moitié de la formule :
Code :
=INDEX($H:$H;EQUIV(MAX(SI($C$2:$C$1000=$J$1;$A$2:$A$1000));$A:$A;0)) je viens d'ajouter un fichier excel pour exemple dans mon premier post merci |
|
|
00
|
|
|
#6 |
|
Membre expérimenté
![]() Enseignant Inscription : novembre 2009 Messages : 350 ![]() |
Bonjour à tous, bonjour Djohn
Pour ce cas de figure, la formule précédente n'est pas efficace (elle traite les dates différentes), tu peux alors changer cette formule (matricielle) par: Code :
=INDEX(H:H;EQUIV(1;($A$1:$A$1000=MAX(SI($C$1:$C$1000=K2;$A$1:$A$1000)))*($C$1:$C$1000=K2);0)) Code :
=INDEX(H:H;EQUIV(1;($A$1:$A$1000=MAX(SI($C$1:$C$1000=K2;$A$1:$A$1000)))*($C$1:$C$1000=K2);0))-INDEX($H:$H;EQUIV(K2;$C:$C;0)) Cordialement |
|
|
00
|
|
|
#7 |
|
Membre régulier
![]() Inscription : février 2007 Messages : 247 ![]() |
merci beaucoup hben1961, la formule fonctionne à merveille
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com