SommeProd et Définition de matrice

Y compris Power BI, Power Query et toute autre question en lien avec Excel
A
Akaiasa
Nouveau venu
Nouveau venu
Messages : 5
Inscrit le : 22 juin 2019
Version d'Excel : 2016 FR

Message par Akaiasa » 2 juillet 2019, 15:08

Bonjour,

Je suis débutant en Excel et n'ai pas encore de notions de VBA.

Voici mon problème :
* je souhaite faire une SommeProd de 3 vecteurs simples...
* ...en définissant directement lesdits vecteurs dans la formule. Est-ce possible ?

Je m'explique :
* Le premier vecteur, disons A, est simple, c'est une colonne constante
* le deuxième vecteur, disons B=B1:B500 est défini par : B_{i}= B_{i-1}*(1-$E$1) où E1 est une référence vers un paramètre de l'onglet, et où B est initialisé par B_{0} qui ne fait pas partie du vecteur
* le troisième vecteur, disons C=C1:C500 est défini par une formule identique au vecteur B avec un paramètre F1.

Je veux donc avoir dans une celle de sortie une Cellule qui fasse :
SOMMEPROD(A2:A500;B2:B500;C2:C500)
mais définissant les trois vecteurs A,B,C directement dans la formule, afin de ne pas alourdir le fichier des vecteurs A B et C explicitement écrits (car il y a 3 vecteurs à 500 lignes pour N situations de calcul avec N "grand" (de l'ordre de 20)).

Note : dans ce cas simple, B peut être défini non récursivement par : B_{i} = (1-$E$1)^{i}*B_{0}, ce qui simplifie notre cas

Cela est-il possible ? Sur Excel sans VBA ? Sinon, avec VBA ?

J'espère que cela est clair. J'ai joint un fichier exemple pour illustrer mon propos.

Merci pour votre aide !

A.
Exemple_sommeprod.xlsx
(27.9 Kio) Téléchargé 8 fois
j
jvdo
Jeune membre
Jeune membre
Messages : 43
Appréciation reçue : 1
Inscrit le : 25 juillet 2018
Version d'Excel : 2010

Message par jvdo » 3 juillet 2019, 12:36

Bonjour à tous,

Tu peux te passer de ton sommeprod() et utiliser la formule suivante qui factorise les calculs internes du sommeprod() :
=$A$2*$B$1*$C$1*(1-$E$1)*(1-$F$1)*(1-((1-$E$1)*(1-$F$1))^500)/(1-(1-$E$1)*(1-$F$1))

Remarque : au cas où, tu remarqueras que E1 et F1 peuvent commuter.

Cordialement

edit : si tu veux absolument utiliser un somme prod() : =A2*B1*C1*SOMMEPROD((1-E1)^LIGNE($1:$500)*(1-F1)^LIGNE($1:$500))
A
Akaiasa
Nouveau venu
Nouveau venu
Messages : 5
Inscrit le : 22 juin 2019
Version d'Excel : 2016 FR

Message par Akaiasa » 5 juillet 2019, 11:23

Bonjour,

Merci pour ta réponse.

Ce n'est malheureusement pas tout à fait ce que je recherche.
Tu utilises le fait que les suites soient géométriques, ce qui constitue une solution très particulière (car on n'a tout simplement pas besoin des données intermédiaires dans ce cas particulier, la somme dépend simplement de la raison et du nombre de termes).

Mais lorsque le résultat dépend réellement des données intermédiaires, ma question se pose toujours.
Si on veut faire une sommeprod : Somme (AkBk) avec Ak et Bk définies par une formule simple, par exemple Ak = f(A0,...,Ak-1), Bk=g(k), est-ce qu'il est possible de définir les matrices des Ak et Bk directement dans la cellule qui fait le sommeprod sans avoir à stocker ces données quelque part ?

Merci pour votre aide,
A.
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message