Sommeprod avoir le résultat de la valeur et non "vrai ou faux"


#1

Bonjour,

J’ai utilisé la formule sommeprod dans mon fichier suite aux conseils d’un des membres de ce forum, pour pouvoir rechercher une date comprise entre deux dates en fonction d’un numéro commun.

Ci-joint le fichier avec en feuille 1 les dates de début et de fin et le numéro client.
Et en feuille 2, les numéros clients associés à des dates. (Il y a des doublons de part et d’autre)

J’ai donc réussis à savoir si dans ma feuille 2 j’avais une date d’un numéro client comprise entre les dates du même numéro client de ma feuille 1. Cependant, au lieu d’avoir “vrai” ou “faux” j’aurai aimé que la date correspondante de la feuille 2 s’affiche lorsque c’est “vrai”.

J’espère avoir été claire …

Merci d’avance pour vos retours :slight_smile:
Excel.xlsx (10,6 Ko)


#2

Re bonjour @LB03,

Je fais donc suite à l’autre message.

J’ai supprimer la formule que tu as mis en colonne “D”.
J’ai aussi nommé les plages de la feuille 2, car je suppose qu’elles sont amenées a s’étendre, donc voir dans le “Gestionnaire de noms”.

ColAFeuil2 =DECALER(Feuil2!$A$2;;;NBVAL(Feuil2!$A:$A)-1)
ColBFeuil2 =DECALER(Feuil2!$B$2;;;NBVAL(Feuil2!$B:$B)-1)

En “D2” formule matricielle a valider avec ctrl + maj + entrée

=SI(MIN(SI((ColAFeuil2=A2)*(ColBFeuil2>B2)*(ColBFeuil2<C2);ColBFeuil2))=0;"";MIN(SI((ColAFeuil2=A2)*(ColBFeuil2>B2)*(ColBFeuil2<C2);ColBFeuil2)))

Ci-joint ton fichier en retour ICI==> LR03 V3.xlsx (13,7 Ko)

Cordialement.


#3

Re @LB03,

Dans les 2 fichiers que tu as joins du message que tu as effacée, les colonnes “A” de la feuille 2 sont au format TEXTE, c’est pour ça que cela ne fonctionnait pas :wink:

Excel 1.xlsx (1,7 Mo)
Excel 2.xlsx (1,7 Mo)

Dans les 2 cas et si tu veux conserver ce format, tu dois légèrement modifier la formule en utilisant la fonction CNUM.

En “D2”:

=SI(MIN(SI((CNUM(ColAFeuil2)=A2)*(ColBFeuil2>B2)*(ColBFeuil2<C2);ColBFeuil2))=0;"";MIN(SI((CNUM(ColAFeuil2)=A2)*(ColBFeuil2>B2)*(ColBFeuil2<C2);ColBFeuil2)))

Mais ça va ramer, car sur plus de 30.000 lignes, les formules matricielles sont gourmandes en ressource.

Peut-être faudrait-il donc penser à une solution par VBA, je ne te promets pas un résultat dans l’immédiat, mais avec un peu de patience, j’y réfléchirais si tu le souhaite.

Cordialement.


#4

Bonjour mdo100,

Oui j’ai supprimé mon message car je me suis rendue compte de mon erreur et du mauvais format de mes cellules, du coup en rectifiant j’ai réussis à avoir le résultat escompté :slight_smile:

Merci encore !

Bonne journée,