Sommeprod ou pas

Bonjour à tous,

Je suis en train de mettre en place, pour mon activité professionnelle, un tableau assez classique de suivi facturation/encaissements.

Le principe : une première feuille permettant d'assurer le suivi des factures, et une deuxième permettant d'assurer celui des encaissements.

J'ai scindé en 2 car plusieurs encaissements peuvent correspondre à une facture, et un encaissement peut correspondre à plusieurs factures.

L'idée étant de ne pas saisir 2 fois les mêmes données (évidemment) j'ai réussi à récupérer les données des factures dans le tableau des encaissements en utilisant la fonction RECHERCHEV sur le numéro de facture. (tout ça doit être très simple pour vous)

C'est l'inverse que je ne parviens pas à faire : récupérer les règlements effectués dans le tableau encaissement pour les insérer dans mon tableau de suivi de factures.

Ce qui me pose une difficulté, c'est que plusieurs lignes peuvent correspondre à une seule facture : il faut donc additionner les montants.

Je pensais m'en sortir avec la fonction SOMMEPROD, mais je m'arrache les cheveux depuis des heures sans y parvenir (niveau Excel, j'en suis aux balbutiements)

Si vous aviez des conseils là-dessus, je suis preneur ! (et les cheveux qui me restent vous diront merci)

13facturation.xlsx (23.53 Ko)

bonjour,

une proposition

8facturation-1.xlsx (24.10 Ko)

Bonsoir à tous

peu être cela en L3 et tirer vers le bas

=SOMMEPROD((recettes_21[n° facture]='FACT-21'!B3)*recettes_21[montant règlement])

Bonjour hd31, h2so4

Inutile d'aller dans l'usine à gaz avec un SOMMEPROD()

Un simple

=SOMME.SI(recettes_21[n° facture];[@NUMERO];recettes_21[montant règlement])

Fait l'affaire

@+

Génial ! réponses rapides et efficaces... que vous dire?

Mille MERCIS à vous!

bonjour BrunoM45

je ne vois pas en quoi

=SOMME.SI(recettes_21[n° facture];[@NUMERO];recettes_21[montant règlement])

est moins usine à gaz que

=SOMMEPROD((recettes_21[n° facture]=[@NUMERO])*recettes_21[montant règlement])

Bonjour h2so4

bonjour BrunoM45

je ne vois pas en quoi

=SOMME.SI(recettes_21[n° facture];[@NUMERO];recettes_21[montant règlement])

est moins usine à gaz que

=SOMMEPROD((recettes_21[n° facture]=[@NUMERO])*recettes_21[montant règlement])

C'est ce que j'ai appris un jour faire un test en insérant 100.000 lignes avec les valeurs,
chez moi la différence au recalcul et à l'enregistrement est flagrante

@+

Bonjour BrunoM45,

En effet sommeprod semble 3 fois plus lent que somme.si. Merci, j'ai appris quelque chose , intuitivement je ne pensais pas qu'il y aurait une telle différence.

Dans mon imaginaire, une usine à gaz à un rapport avec la complexité d'une logique ou d'une écriture plutôt qu'avec les performances d'une instruction.

Bonjour h2so4,

Les formules SOMME.SI, NB.SI, SOMME.SI.ENS, NB.SI.ENS sont, il me semble, des formules optimisées consommant moins de mémoire/puissance qu'un SOMMEPROD, plus lent en interprétation. C'est pour ça qu'il faut les prioriser dans la mesure du possible.

Bonne soirée.

Rechercher des sujets similaires à "sommeprod pas"