OVH Cloud OVH Cloud

Somme f(liste)

6 réponses
Avatar
Domi
Bonsoir à tous,

Dans une feuille la colonne A (nommée "Ref") contient des références
(texte), la colonne B (nommée "Prix") contient des valeurs numériques.

Sur une autre feuille, j'ai une plage (nommée "Liste") qui contient un
nombre variable de références figurant dans la plage Ref.

Je voudrais connaitre dans une cellule la somme des prix de l'ensemble des
références de la feuille Import pour les références qui figurent dans
"Liste"

Quelle formule utiliser ?
En espérant avoir été clair.
Merci
Domi

6 réponses

Avatar
boblebob
salut,

bizarre que aucun membre de la SPA ou SPU ne t'ai répondu.

=SOMMEPROD((Ref="mademande")*(Prix))

ça devrait marcher
--
a+
bob

(enlever nospam00-)
----
"Domi" a écrit dans le message de news:

Bonsoir à tous,

Dans une feuille la colonne A (nommée "Ref") contient des références
(texte), la colonne B (nommée "Prix") contient des valeurs numériques.

Sur une autre feuille, j'ai une plage (nommée "Liste") qui contient un
nombre variable de références figurant dans la plage Ref.

Je voudrais connaitre dans une cellule la somme des prix de l'ensemble des
références de la feuille Import pour les références qui figurent dans
"Liste"

Quelle formule utiliser ?
En espérant avoir été clair.
Merci
Domi





Avatar
ChrisV
Bonjour Domi,

Dans un module...

Function zaza(zn)
Dim r As Range
Dim nb As Long
nb = 0
For Each r In zn
With Range("Ref")
Set c = .Find(r, LookIn:=xlValues)
If Not c Is Nothing Then
AdrD = c.Address
Do
nb = nb + c.Offset(0, 1).Value
Loop While Not c Is Nothing And c.Address <> AdrD
End If
End With
Next r
zaza = nb
End Function

dans le classeur:
=zaza(Liste)


ChrisV


"Domi" a écrit dans le message de news:

Bonsoir à tous,

Dans une feuille la colonne A (nommée "Ref") contient des références
(texte), la colonne B (nommée "Prix") contient des valeurs numériques.

Sur une autre feuille, j'ai une plage (nommée "Liste") qui contient un
nombre variable de références figurant dans la plage Ref.

Je voudrais connaitre dans une cellule la somme des prix de l'ensemble des
références de la feuille Import pour les références qui figurent dans
"Liste"

Quelle formule utiliser ?
En espérant avoir été clair.
Merci
Domi





Avatar
Domi
Merci, mais j'ai du mal à suivre... j'ai beau tourner le code dans tous les
sens, je n'y arrive pas. Je n'ai pas du être clair dans ma demande. J'essaye
de reformuler.
Sur Feuil1 une plage A11:A100 nommée "Ref" (ref d'articles, avec multiples)
et une plage D11:D100 nommée "Prix"
Sur Feuil2 une plage B1:B10 nommée "Liste" qui contient de 1 à 10 refs
d'articles (unique)

Sur Feuil1, je voudrais connaitre en B2 : le montant (Somme des prix de la
plage "Prix") pour toutes les refs de Feuil1 qui figurent dans "Liste" de la
Feuil2.

J'aimerais obtenir cela par une formule car je ne suis pas tès calé, de plus
les plages ne sont vraiment celle-çi et je ne saurai probablement pas
adapter du VBA...

Encore Merci
Domi


"ChrisV" a écrit dans le message de news:

Bonjour Domi,

Dans un module...

Function zaza(zn)
Dim r As Range
Dim nb As Long
nb = 0
For Each r In zn
With Range("Ref")
Set c = .Find(r, LookIn:=xlValues)
If Not c Is Nothing Then
AdrD = c.Address
Do
nb = nb + c.Offset(0, 1).Value
Loop While Not c Is Nothing And c.Address <> AdrD
End If
End With
Next r
zaza = nb
End Function

dans le classeur:
=zaza(Liste)


ChrisV


"Domi" a écrit dans le message de news:

Bonsoir à tous,

Dans une feuille la colonne A (nommée "Ref") contient des références
(texte), la colonne B (nommée "Prix") contient des valeurs numériques.

Sur une autre feuille, j'ai une plage (nommée "Liste") qui contient un
nombre variable de références figurant dans la plage Ref.

Je voudrais connaitre dans une cellule la somme des prix de l'ensemble
des


références de la feuille Import pour les références qui figurent dans
"Liste"

Quelle formule utiliser ?
En espérant avoir été clair.
Merci
Domi









Avatar
Daniel.M
Bonjour Domi,

En B2:
=SOMMEPROD(--(ESTNUM(EQUIV(Ref;Liste;0)));Prix)

Salutations,

Daniel M.

"Domi" wrote in message
news:%
Merci, mais j'ai du mal à suivre... j'ai beau tourner le code dans tous les
sens, je n'y arrive pas. Je n'ai pas du être clair dans ma demande. J'essaye
de reformuler.
Sur Feuil1 une plage A11:A100 nommée "Ref" (ref d'articles, avec multiples)
et une plage D11:D100 nommée "Prix"
Sur Feuil2 une plage B1:B10 nommée "Liste" qui contient de 1 à 10 refs
d'articles (unique)

Sur Feuil1, je voudrais connaitre en B2 : le montant (Somme des prix de la
plage "Prix") pour toutes les refs de Feuil1 qui figurent dans "Liste" de la
Feuil2.

J'aimerais obtenir cela par une formule car je ne suis pas tès calé, de plus
les plages ne sont vraiment celle-çi et je ne saurai probablement pas
adapter du VBA...

Encore Merci
Domi


"ChrisV" a écrit dans le message de news:

Bonjour Domi,

Dans un module...

Function zaza(zn)
Dim r As Range
Dim nb As Long
nb = 0
For Each r In zn
With Range("Ref")
Set c = .Find(r, LookIn:=xlValues)
If Not c Is Nothing Then
AdrD = c.Address
Do
nb = nb + c.Offset(0, 1).Value
Loop While Not c Is Nothing And c.Address <> AdrD
End If
End With
Next r
zaza = nb
End Function

dans le classeur:
=zaza(Liste)


ChrisV


"Domi" a écrit dans le message de news:

Bonsoir à tous,

Dans une feuille la colonne A (nommée "Ref") contient des références
(texte), la colonne B (nommée "Prix") contient des valeurs numériques.

Sur une autre feuille, j'ai une plage (nommée "Liste") qui contient un
nombre variable de références figurant dans la plage Ref.

Je voudrais connaitre dans une cellule la somme des prix de l'ensemble
des


références de la feuille Import pour les références qui figurent dans
"Liste"

Quelle formule utiliser ?
En espérant avoir été clair.
Merci
Domi













Avatar
ChrisV
Re,

Je n'ai pas du être clair dans ma demande...


Si si... parfaitement clair mais...

lors du message initiale:
"la colonne B (nommée "Prix") contient des valeurs numériques"

et maintenant:
"...une plage D11:D100 nommée "Prix"

... :-(

Donc... en B2:
=zaza(Liste)

et dans un module:

Function zaza(zn)
Dim r As Range
Dim nb As Long
nb = 0
For Each r In zn
With Range("Ref")
Set c = .Find(r, LookIn:=xlValues)
If Not c Is Nothing Then
AdrD = c.Address
Do
nb = nb + c.Offset(0, 3).Value
Loop While Not c Is Nothing And c.Address <> AdrD
End If
End With
Next r
zaza = nb
End Function


ChrisV


"Domi" a écrit dans le message de news:
#
Merci, mais j'ai du mal à suivre... j'ai beau tourner le code dans tous
les

sens, je n'y arrive pas. Je n'ai pas du être clair dans ma demande.
J'essaye

de reformuler.
Sur Feuil1 une plage A11:A100 nommée "Ref" (ref d'articles, avec
multiples)

et une plage D11:D100 nommée "Prix"
Sur Feuil2 une plage B1:B10 nommée "Liste" qui contient de 1 à 10 refs
d'articles (unique)

Sur Feuil1, je voudrais connaitre en B2 : le montant (Somme des prix de la
plage "Prix") pour toutes les refs de Feuil1 qui figurent dans "Liste" de
la

Feuil2.

J'aimerais obtenir cela par une formule car je ne suis pas tès calé, de
plus

les plages ne sont vraiment celle-çi et je ne saurai probablement pas
adapter du VBA...

Encore Merci
Domi


"ChrisV" a écrit dans le message de news:

Bonjour Domi,

Dans un module...

Function zaza(zn)
Dim r As Range
Dim nb As Long
nb = 0
For Each r In zn
With Range("Ref")
Set c = .Find(r, LookIn:=xlValues)
If Not c Is Nothing Then
AdrD = c.Address
Do
nb = nb + c.Offset(0, 1).Value
Loop While Not c Is Nothing And c.Address <> AdrD
End If
End With
Next r
zaza = nb
End Function

dans le classeur:
=zaza(Liste)


ChrisV


"Domi" a écrit dans le message de news:

Bonsoir à tous,

Dans une feuille la colonne A (nommée "Ref") contient des références
(texte), la colonne B (nommée "Prix") contient des valeurs numériques.

Sur une autre feuille, j'ai une plage (nommée "Liste") qui contient
un



nombre variable de références figurant dans la plage Ref.

Je voudrais connaitre dans une cellule la somme des prix de l'ensemble
des


références de la feuille Import pour les références qui figurent dans
"Liste"

Quelle formule utiliser ?
En espérant avoir été clair.
Merci
Domi













Avatar
Domi
Merci beaucoup à tous deux et mea culpa pour énoncé confus ;o)
Domi

"ChrisV" a écrit dans le message de news:
#
Re,

Je n'ai pas du être clair dans ma demande...


Si si... parfaitement clair mais...

lors du message initiale:
"la colonne B (nommée "Prix") contient des valeurs numériques"

et maintenant:
"...une plage D11:D100 nommée "Prix"

... :-(

Donc... en B2:
=zaza(Liste)

et dans un module:

Function zaza(zn)
Dim r As Range
Dim nb As Long
nb = 0
For Each r In zn
With Range("Ref")
Set c = .Find(r, LookIn:=xlValues)
If Not c Is Nothing Then
AdrD = c.Address
Do
nb = nb + c.Offset(0, 3).Value
Loop While Not c Is Nothing And c.Address <> AdrD
End If
End With
Next r
zaza = nb
End Function


ChrisV


"Domi" a écrit dans le message de news:
#
Merci, mais j'ai du mal à suivre... j'ai beau tourner le code dans tous
les

sens, je n'y arrive pas. Je n'ai pas du être clair dans ma demande.
J'essaye

de reformuler.
Sur Feuil1 une plage A11:A100 nommée "Ref" (ref d'articles, avec
multiples)

et une plage D11:D100 nommée "Prix"
Sur Feuil2 une plage B1:B10 nommée "Liste" qui contient de 1 à 10 refs
d'articles (unique)

Sur Feuil1, je voudrais connaitre en B2 : le montant (Somme des prix de
la


plage "Prix") pour toutes les refs de Feuil1 qui figurent dans "Liste"
de


la
Feuil2.

J'aimerais obtenir cela par une formule car je ne suis pas tès calé, de
plus

les plages ne sont vraiment celle-çi et je ne saurai probablement pas
adapter du VBA...

Encore Merci
Domi


"ChrisV" a écrit dans le message de news:

Bonjour Domi,

Dans un module...

Function zaza(zn)
Dim r As Range
Dim nb As Long
nb = 0
For Each r In zn
With Range("Ref")
Set c = .Find(r, LookIn:=xlValues)
If Not c Is Nothing Then
AdrD = c.Address
Do
nb = nb + c.Offset(0, 1).Value
Loop While Not c Is Nothing And c.Address <> AdrD
End If
End With
Next r
zaza = nb
End Function

dans le classeur:
=zaza(Liste)


ChrisV


"Domi" a écrit dans le message de news:

Bonsoir à tous,

Dans une feuille la colonne A (nommée "Ref") contient des
références




(texte), la colonne B (nommée "Prix") contient des valeurs
numériques.





Sur une autre feuille, j'ai une plage (nommée "Liste") qui contient
un



nombre variable de références figurant dans la plage Ref.

Je voudrais connaitre dans une cellule la somme des prix de
l'ensemble




des
références de la feuille Import pour les références qui figurent
dans




"Liste"

Quelle formule utiliser ?
En espérant avoir été clair.
Merci
Domi