Comparer une valeur à une liste

kanyou

XLDnaute Nouveau
Bonjour,

Je suis confronté à un problème sur Excel et étant novice, je ne sais pas quelles sont les limites des formules.
Voici ce que je tente de faire:

J'ai une liste de données (dates en colonne A et taux en colonne B):

A B
01/01/2008 5%
15/02/2009 2%
17/04/2010 4,5%
20/08/2011 3%

Et dans la cellule C1, j'ai un montant : 2500 EUR

Dans un premier temps, j'ai voulu multiplier le montant par chaque taux et additionner le résultat. Pour cela, j'ai trouvé la fonction SOMMEPROD que j'ai utilisée comme ceci:

=SOMMEPROD((B1:B4)*C1)

Ce qui me donne mon résultat souhaité. Jusque la tout va bien.

Pour la suite, ça se complique : pour chaque ligne de ma colonne A1, j'aimerais comparer la date avec une date que j'aurais dans une autre cellule (disons D1), et si Ai > D1, je divise C1 par deux, sinon je garde C1. Et comme plus haut, sommer le produit obtenu.

J'ai essayé d'adapter la formule ci-dessus comme suit:

=SOMMEPROD((B1:B4)*SI(D1>(A1:A4);C1/2;C1))

mais la formule renvoie une erreur.

En fait en théorie voici ce que je voudrais:

=SOMMEPROD(Bi*SI(D1>(Ai);C1/2;C1)) avec i allant de 1 à 4 par exemple (mes numéros de lignes)

Y aurait-il une formule qui pourrait m'aider? Sachant que je ne dois pas modifier ma feuille de calcul (donc impossible d'afficher le résultat de mon test IF dans une nouvelle colonne et de faire ensuite un SOMMEPROD sur ces deux colonnes).

J'imagine que mon problème peut être résolu en VBA, mais je ne m'y connais pas du tout et je n'ai pas suffisamment de temps pour m'y former.

Merci beaucoup d'avance à quiconque pourra m'aider.
 

JCGL

XLDnaute Barbatruc
Re : Comparer une valeur à une liste

Bonjour à tous,

Quand vas-tu te décider à déposer un fichier ?

Capture 6.png

A+ à tous
 

kanyou

XLDnaute Nouveau
Re : Comparer une valeur à une liste

Bonjour,

Voici un version simplifiée de ce que je veux faire en copie jointe:
Si ma date de début en B16, est superieure à l'une des dates en colonne C, j'applique le taux correspondant de la colonne F a la moitié du total, sinon je prends le total et je somme chaque résultat.
Pour le moment, j'ai fait un test simple en cellule E16, mais je récupère une erreur (a mon avis, le problème vient de cette partie $C$2:$C$13<$B$16

Merci,
 

Pièces jointes

  • calcul tae.xlsx
    10.3 KB · Affichages: 39

JCGL

XLDnaute Barbatruc
Re : Comparer une valeur à une liste

Bonjour à tous,

Peux-tu essayer en validant ta formule en matricielle (dans la barre de formule Ctrl+Maj+Entrée)

A+ à tous

Edition : Pas rafraîchi.

Edition 2 : Ajout fichier avec les $ qui vont bien
 

Pièces jointes

  • JC Calcul TAE.xlsx
    19.2 KB · Affichages: 37
Dernière édition:

kanyou

XLDnaute Nouveau
Re : Comparer une valeur à une liste

Désolé de vous embêter à nouveau, mais j'ai un problème cette fois avec le calcul retourné:
J'ai compliqué la formule pour ajouter un parametre 'OU' dans ma fonction 'SI':
Si ma date de début en B16 > l'une des dates en colonne C ou que la date de fin en C16 < dates en colonne C, on multiplie le taux de la ligne correspondante par le total en D16.
Donc dans ma colonne G16, je m'attends à avoir : 2500*(0.02+0.022+0.045) = 217.5
alors qu'ici il me prends tous les taux de la colonne G

L'un de vous voit-il d'où cela pourrait venir?

Merci beaucoup
 

Pièces jointes

  • Calcul TAE 2.xlsx
    22.1 KB · Affichages: 56

Amilo

XLDnaute Accro
Re : Comparer une valeur à une liste

Bonsoir,

Peut-être avec cette formule G16 à valider en matricielle :


=SOMMEPROD(SI((($B16>$C$2:$C$13)+($C16<$D$2:$D$13));(G$2:G$13)*$D$16))

ou bien

=SOMME(SI((($B16>$C$2:$C$13)+($C16<$D$2:$D$13));(G$2:G$13)*$D$16))

Cordialement
 
Dernière édition:

Discussions similaires

Réponses
5
Affichages
296

Statistiques des forums

Discussions
312 104
Messages
2 085 332
Membres
102 864
dernier inscrit
abderrashmaen