|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Nouveau Membre du Club
![]() Inscription : janvier 2009 Messages : 78 ![]() |
Bonjour a tous
J'ai en colonne A plusieurs noms différents et en colonne B des chiffres J'ai une liste de préférés qui sont entre crochet Voila j'ai cette formule: =SOMMEPROD((A1:A100={"ADR"."BAW"."MXA"."ITF"."KAC"."JBU".OHY"})*(B1:B100)) Je voudrais remplacer {"ADR"."BAW"."MXA"."ITF"."KAC"."JBU".OHY"} par un simple terme "MaListe" pour éviter si je modifie ces préférés aller dans la formule exp. =SOMMEPROD((A1:A100=Ma Liste)*(B1:B100)) J'ai essayé mais cela ne fonctionne pas Merci et bonne journée Philippe76 |
|
|
00
|
|
|
#2 |
|
Membre habitué
![]() ![]() Inscription : janvier 2011 Messages : 106 ![]() |
Bonjour,
Peut-être avec Code :
=SOMMEPROD((NB.SI(MaListe;A1:A10))*(B1:B10)) |
|
|
00
|
|
|
#3 |
|
Nouveau Membre du Club
![]() Inscription : janvier 2009 Messages : 78 ![]() |
Merci c'est tout bon
Bonne journée
|
|
|
00
|
|
|
#4 |
|
Membre confirmé
![]() Inscription : mai 2010 Messages : 200 ![]() |
Bonjour,
Juste pour une petite explication concernant ta formule : =SOMMEPROD((A1:A100=Ma Liste)*(B1:B100)) Tu as une erreur car tu compares une colonne de 100 lignes avec une autre (Ma Liste) de 7 valeurs ce qui provoque l'erreur #VALEUR! (les colonnes devant être de même longueur). D'ailleurs si tu avais 100 valeurs dans Ma Liste, tu n'aurais plus le message d'erreur mais un résultat faux puisque la comparaison se fait ligne par ligne soit : A1=1er élement de Ma Liste; A2=2ème élément de Ma Liste ...etc). Ce qui ne correspond pas à ce que tu recherches. La solution (en plus de celle U. Milité qui est OK) est mettre ta liste sur 1 ligne et non 1 colonne. A1:A100=Ma Liste renvoie alors une matrice de 100 lignes et 7 colonnes (1 pour chaque élément de Ma Liste). La formule renvoie alors le résultat escompté. Ou avec ta liste en colonne, utiliser la fonction TRANSPOSE. =SOMMEPROD((A1:A100=TRANSPOSE(Ma Liste))*(B1:B100)) ce qui nécessite de valider la formule par ctrl+maj+entrée, le caractère matriciel n'étant pas transmis à TRANSPOSE par SOMMEPROD. Ceci est juste pour expliquer le non-fonctionnement de ta formule, d'autant que la formule avec NB.SI dans le cas d'une très grande plage de données est moins gourmande en ressources. A+ Gérard |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com