Excel Somme si recherche v satisfaisante

Fermé
Gepi27 - 25 janv. 2012 à 11:06
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 25 janv. 2012 à 12:44
Bonjour,

J'ai besoin de faire une somme de plage de données si ma recherche v est satisfaisante. Je m'explique :

- Dans une feuille 1 j'ai une liste de codes (1A,1B,1C,1D....) en colonne A, avec pour chaque code, plusieurs valeurs en colonnes (colonne B : 15, colonne C : 20, colonne D : 25,...)

- Dans une feuille 2 de mon classeur, j'ai la même liste de codes.

- Je voudrais faire la somme, pour chaque code, de toutes les valeurs présentes en colonnes.

Je veux donc faire une recherche v de mon code dans la feuille 1, et faire l'addition de la plage B à D correspondant à la ligne de mon code de la feuille 1. Si la recherchev n'est pas satisfaisante, je inscrire un texte dans la cellule (type "code non trouvé").

Comment puis-je procéder pour traduire cela en formule Excel svp ?

Merci bcp par avance de votre aide,

Gepi27
A voir également:

3 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
25 janv. 2012 à 11:26
Bonjour
pas tout compris, mais je pense que RECHERCHEV ne convient pas
essayez avec;, à adapter pour u champ feuille 1 de A1 à D100
et une édition en feuille 2 de A1 àB100:
en B1 feuille 2
=SI(NB.SI('feuille 1"!$A$1:$A$100;$A1)=0;"code non trouvé";SOMMEPROD(('feuille 1'!$A$1:$A$100=$A1)*('feuille 1'!$B$1:$D$100))
placez les $ aux bons endroits et tirez la formule sur la hauteur de la, liste en A

crdlmnt
0
Merci Vaucluse,

Votre réponse m'aide déjà beaucoup. En revanche, tel que j'ai tapé la formule, ma cellule ne fait pas le total que je souhaite.

En effet, je voudrais que la cellule calcule uniquement le total des valeurs qui se trouvent sur la ligne du code approprié.

Telle qu'elle est rédigée ici, la formule dit que "si je ne trouve pas le code, je mets "pas de facture", si je trouve le code je calcule la somme de B6 à BR500". Or j'ai un code par ligne, je veux donc que le calcul s'opère sur la ligne correspondant au code désiré. C'est donc la partie sommeprod qu'il faut que j'adapte mais je ne vois pas comment...

=SI(NB.SI('Récap Facturation VF par cde'!A:A;'SH 41'!E5)=0;"Pas de facture";SOMMEPROD('Récap Facturation VF par cde'!$B$6:$BR$500))


Merci de votre aide si vous arrivez à comprendre ma question !

Cdlt,
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
25 janv. 2012 à 12:44
Re

je pense que vous n'avez pas utilisé le code SOMMEPROD correctement:
il faut deux items dans la formule:

le premier pour sélectionner la référence en A, le second pour définir le champ à sommer:

soit, après la condition d'élimination:
....;SOMMEPROD((SOMMEPROD('Récap Facturation VF par cde'!$A$6:$A$500=A1)*('Récap Facturation VF par cde'!$B$6:$BR$500))

qui vous donnera uniquement la somme correspondante à la référence en A1!

crdlmnt
0