Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

sommeprod selon valeur partie droite dans une cellule

14 réponses
Avatar
J
Bonjour à tous (XL2000)

En col B, du texte et une année, par exemple : Tagada 2007
En col D des chiffres,
En H2 une année, par exemple : 2007.

Je cherche à faire la somme des chiffres en col D quand la date dans la
partie droite de la cellule en col B est égale à la valeur en H2.

La formule =SOMMEPROD((B2:B200=2007)*D2:D200) marche si la date est
seule dans la cellule.

J'essaie avec =ANNEE(DROITE(B117;4)) de récupérer la date en B, ce qui
ne marche pas :-{

Comment bidouiller ces formules, svp?
Merci pour l'aide

@+
J@@

10 réponses

1 2
Avatar
Ellimac
Bonjour,

=SOMMEPROD((droite(B2:B200;4) 07)*D2:D200)

Camille

"J@@" a écrit dans le message de news:

Bonjour à tous (XL2000)

En col B, du texte et une année, par exemple : Tagada 2007
En col D des chiffres,
En H2 une année, par exemple : 2007.

Je cherche à faire la somme des chiffres en col D quand la date dans la
partie droite de la cellule en col B est égale à la valeur en H2.

La formule =SOMMEPROD((B2:B200 07)*D2:D200) marche si la date est seule
dans la cellule.

J'essaie avec =ANNEE(DROITE(B117;4)) de récupérer la date en B, ce qui ne
marche pas :-{

Comment bidouiller ces formules, svp?
Merci pour l'aide

@+
J@@



Avatar
J
Bonjour Camille
et merci
=SOMMEPROD((droite(B2:B200;4)="2007")*D2:D200)
marche très bien.

Et si, au lieu de coder 2007 en dur, je souhaitais me référer à une
cellule, ex : H2, cela ne fonctionne plus. Est-ce possible?
=DROITE(B6;4) me donne 2007 OK
=DROITE(B2;4)=H2 me donne FAUX
=SOMMEPROD((DROITE(B2:B200;4)=H2)*D2:D200)me donne 0 :-[

Merci pour tes lumières.
@+
J@@ (c'est l'heure d'aller au boulot où pas de connection, à dans pleins
d'heures)


Bonjour,

=SOMMEPROD((droite(B2:B200;4) 07)*D2:D200)

Camille

"J@@" a écrit dans le message de news:

Bonjour à tous (XL2000)

En col B, du texte et une année, par exemple : Tagada 2007
En col D des chiffres,
En H2 une année, par exemple : 2007.

Je cherche à faire la somme des chiffres en col D quand la date dans la
partie droite de la cellule en col B est égale à la valeur en H2.

La formule =SOMMEPROD((B2:B200 07)*D2:D200) marche si la date est seule
dans la cellule.

J'essaie avec =ANNEE(DROITE(B117;4)) de récupérer la date en B, ce qui ne
marche pas :-{




Avatar
Patrick BASTARD
Bonjour, *J@@*


Bonjour Camille
et merci
=SOMMEPROD((droite(B2:B200;4)="2007")*D2:D200)
marche très bien.

Et si, au lieu de coder 2007 en dur, je souhaitais me référer à une
cellule, ex : H2, cela ne fonctionne plus. Est-ce possible?


Essaie avec :
=SOMMEPROD((droite(B2:B200;4)=Annee(H2))*D2:D200)

--
Bien amicordialement,
P. Bastard

Avant d'imprimer ce mail, ayez une pensée pour les arbres.

Avatar
isabelle
bonjour J@@,

=SOMMEPROD((droite(B2:B200;4)=TEXTE(H2))*D2:D200)

isabelle

Bonjour Camille
et merci
=SOMMEPROD((droite(B2:B200;4)="2007")*D2:D200)
marche très bien.

Et si, au lieu de coder 2007 en dur, je souhaitais me référer à une
cellule, ex : H2, cela ne fonctionne plus. Est-ce possible?
=DROITE(B6;4) me donne 2007 OK
=DROITE(B2;4)=H2 me donne FAUX
=SOMMEPROD((DROITE(B2:B200;4)=H2)*D2:D200)me donne 0 :-[

Merci pour tes lumières.
@+
J@@ (c'est l'heure d'aller au boulot où pas de connection, à dans pleins
d'heures)


Bonjour,

=SOMMEPROD((droite(B2:B200;4) 07)*D2:D200)

Camille

"J@@" a écrit dans le message de news:

Bonjour à tous (XL2000)

En col B, du texte et une année, par exemple : Tagada 2007
En col D des chiffres,
En H2 une année, par exemple : 2007.

Je cherche à faire la somme des chiffres en col D quand la date dans
la partie droite de la cellule en col B est égale à la valeur en H2.

La formule =SOMMEPROD((B2:B200 07)*D2:D200) marche si la date est
seule dans la cellule.

J'essaie avec =ANNEE(DROITE(B117;4)) de récupérer la date en B, ce
qui ne marche pas :-{







Avatar
J
Bonjour Isabelle
Super :-)
j'ai juste ajouté l'argument "aaaa" et cela marche comme je veux.

=SOMMEPROD((DROITE(B2:B16;4)=TEXTE(H2;"aaaa"))*D2:D16)

C'est quand même drôlement compliqué ces fonctions, j'ai beau mettre
pleins de bouts dans un chapeau et secouer soigneusement, ils ne se
mettent jamais comme il faut :-[

Merci beaucoup, et bonjour au Québec.
amicalement
@+
J@@

bonjour J@@,

=SOMMEPROD((droite(B2:B200;4)=TEXTE(H2))*D2:D200)

isabelle

Bonjour Camille
et merci
=SOMMEPROD((droite(B2:B200;4)="2007")*D2:D200)
marche très bien.

Et si, au lieu de coder 2007 en dur, je souhaitais me référer à une
cellule, ex : H2, cela ne fonctionne plus. Est-ce possible?
=DROITE(B6;4) me donne 2007 OK
=DROITE(B2;4)=H2 me donne FAUX
=SOMMEPROD((DROITE(B2:B200;4)=H2)*D2:D200)me donne 0 :-[

J@@

=SOMMEPROD((droite(B2:B200;4) 07)*D2:D200)

Camille

"J@@"
En col B, du texte et une année, par exemple : Tagada 2007
En col D des chiffres,
En H2 une année, par exemple : 2007.

Je cherche à faire la somme des chiffres en col D quand la date dans
la partie droite de la cellule en col B est égale à la valeur en H2.

La formule =SOMMEPROD((B2:B200 07)*D2:D200) marche si la date est
seule dans la cellule.

J'essaie avec =ANNEE(DROITE(B117;4)) de récupérer la date en B, ce
qui ne marche pas :-{








Avatar
J
Re-bonjour Camille
une petite adaptation de ta proposition (made by isabelle), et je suis
heureux.
=SOMMEPROD((DROITE(B2:B16;4)=TEXTE(H2;"aaaa"))*D2:D16)
merci encore :-)
amicalement
@+
J@@

Bonjour,

=SOMMEPROD((droite(B2:B200;4) 07)*D2:D200)

Camille

"J@@"
En col B, du texte et une année, par exemple : Tagada 2007
En col D des chiffres,
En H2 une année, par exemple : 2007.

Je cherche à faire la somme des chiffres en col D quand la date dans la
partie droite de la cellule en col B est égale à la valeur en H2.

La formule =SOMMEPROD((B2:B200 07)*D2:D200) marche si la date est seule
dans la cellule.

J'essaie avec =ANNEE(DROITE(B117;4)) de récupérer la date en B, ce qui ne
marche pas :-{




Avatar
JRM
Bonjour,
Avec un peu de retard et pour compléter les réponses précédentes : une
approche avec la fonction Indirect()

=SOMMEPROD((DROITE(B2:B16;4)=""&INDIRECT("I1")&"")*D2:D16)

Cordialement,
JRM

Bonjour à tous (XL2000)

En col B, du texte et une année, par exemple : Tagada 2007
En col D des chiffres,
En H2 une année, par exemple : 2007.

Je cherche à faire la somme des chiffres en col D quand la date dans la
partie droite de la cellule en col B est égale à la valeur en H2.

La formule =SOMMEPROD((B2:B200 07)*D2:D200) marche si la date est
seule dans la cellule.

J'essaie avec =ANNEE(DROITE(B117;4)) de récupérer la date en B, ce qui
ne marche pas :-{

Comment bidouiller ces formules, svp?
Merci pour l'aide

@+
J@@


Avatar
J
Bonjour JRM
et merci pour ta suggestion.
Elle me retourne 0.
J'ai 3 approches différentes, mais je n'arrive pas à comprendre pourquoi
elles donnent un résultat différent...

Ellimac // OK =SOMMEPROD((droite(B2:B20;4) 07)*D2:D20)

Isabelle // OK =SOMMEPROD((DROITE(B2:B20;4)=TEXTE(H2;"aaaa"))*D2:D20)

me retournent 0:
Patrick =SOMMEPROD((DROITE(B2:B20;4)=ANNEE(H2))*D2:D20)
JRM =SOMMEPROD((DROITE(B2:B20;4)=""&INDIRECT("H2")&"")*D2:D20)

En H2, il y a une date formatée aaaa
En B il s'agit de texte comportant parfois une date (mais c'est du texte)

Les mystères d'Excel me sont insondables.
Si qq'un arrive à m'expliquer ...

Merci encore
cordialement
J@@

Bonjour,
Avec un peu de retard et pour compléter les réponses précédentes : une
approche avec la fonction Indirect()

=SOMMEPROD((DROITE(B2:B16;4)=""&INDIRECT("I1")&"")*D2:D16)

Cordialement,
JRM

Bonjour à tous (XL2000)

En col B, du texte et une année, par exemple : Tagada 2007
En col D des chiffres,
En H2 une année, par exemple : 2007.

Je cherche à faire la somme des chiffres en col D quand la date dans
la partie droite de la cellule en col B est égale à la valeur en H2.

La formule =SOMMEPROD((B2:B200 07)*D2:D200) marche si la date est
seule dans la cellule.

J'essaie avec =ANNEE(DROITE(B117;4)) de récupérer la date en B, ce qui
ne marche pas :-{




Avatar
Patrick BASTARD
Bonjour, *J@@*

Suite à ton post de 20:22, j'ai vérifié la proposition que je t'avais
envoyée :

=SOMMEPROD((droite(B2:B200;4)=Annee(H2))*D2:D200)


Or : Droite(B2:B200,4) renvoie l'année sous format texte
et : Année(H2) renvoie l'année sous format nombre.

D'où l'erreur : pour Excel, 2007 en nombre n'est pas égal à 2007 en texte,
malgré les apparences...

Il suffit donc de multiplier le texte par 1 pour le transformer en nombre :

=SOMMEPROD((droite(B2:B200;4)*1=Annee(H2))*D2:D200)

résoud donc le problème, et rejoint les solutions de Camille et d'Isabelle
dans le clan des "OK"

Cette explication te convient-elle ?

--
Bien amicordialement,
P. Bastard

Avant d'imprimer ce mail, ayez une pensée pour les arbres.

Avatar
JRM
Re...
Mea culpa...Je suis parti du principe que tu n'avais besoin que de
l'année. J'ai donc fait mes tests avec une cellule au format Standard et
contenant simplement : 2007.

Donc deux solutions :
1°) =SOMMEPROD((DROITE(B2:B20;4)=""&INDIRECT("H2")&"")*D2:D20)
Cette formule fonctionne si tu saisis simplement l'année au format
standard. Ex. : 2007

2°) =SOMMEPROD((DROITE(B2:B20;4)=""&ANNEE(H2)&"")*D2:D20)
J'ai adapté la formule de Patrick. Elle fonctionnera si tu saisies une
date en H2. Ex. : 1/1/2007.

--
En espérant que ça convienne,
JRM.

Bonjour JRM
et merci pour ta suggestion.
Elle me retourne 0.
J'ai 3 approches différentes, mais je n'arrive pas à comprendre pourquoi
elles donnent un résultat différent...

Ellimac // OK =SOMMEPROD((droite(B2:B20;4) 07)*D2:D20)

Isabelle // OK =SOMMEPROD((DROITE(B2:B20;4)=TEXTE(H2;"aaaa"))*D2:D20)

me retournent 0:
Patrick =SOMMEPROD((DROITE(B2:B20;4)=ANNEE(H2))*D2:D20)
JRM =SOMMEPROD((DROITE(B2:B20;4)=""&INDIRECT("H2")&"")*D2:D20)

En H2, il y a une date formatée aaaa
En B il s'agit de texte comportant parfois une date (mais c'est du texte)

Les mystères d'Excel me sont insondables.
Si qq'un arrive à m'expliquer ...

Merci encore
cordialement
J@@

Bonjour,
Avec un peu de retard et pour compléter les réponses précédentes : une
approche avec la fonction Indirect()

=SOMMEPROD((DROITE(B2:B16;4)=""&INDIRECT("I1")&"")*D2:D16)

Cordialement,
JRM

Bonjour à tous (XL2000)

En col B, du texte et une année, par exemple : Tagada 2007
En col D des chiffres,
En H2 une année, par exemple : 2007.

Je cherche à faire la somme des chiffres en col D quand la date dans
la partie droite de la cellule en col B est égale à la valeur en H2.

La formule =SOMMEPROD((B2:B200 07)*D2:D200) marche si la date est
seule dans la cellule.

J'essaie avec =ANNEE(DROITE(B117;4)) de récupérer la date en B, ce
qui ne marche pas :-{






1 2