Aide SommeProd

Fermé
thibaut_francois - 19 oct. 2015 à 13:33
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 - 22 oct. 2015 à 00:40
Bonjour,

Petite pièce jointe pour expliquer ma demande

http://www.cjoint.com/c/EJtkkcvZTLp

J'ai une feuille Séjours (date entrée et date sortie d'une chambre) & une autre Prestation avec des prestations effectuées.
Le lien entre les 2 feuilles est le N° du dossier.

J'ai besoin de trouver dans ma feuille prestation, la chambre qui a eu la prestation (en fonction de la date et l'heure).

Sommeprod fonctionne très bien, sauf lorsque je n'ai pas la Date de Sortie dans la feuille Séjours.

Cela signifie que la personne n'est toujours pas sortie au moment où j'ai besoin de faire mon lien...

Comment intégrer dans SOMMEPROD que si ma date de sortie est vide, qu'il peut considérer la date et heure de sortie comme un type 31/12/2099 00h00 ?

2 réponses

eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 214
Modifié par eriiic le 19/10/2015 à 22:48
Bonjour,

Sans doute plus léger, évite la double matricielle, validation simple :
=SOMMEPROD(((J2+K2)>=(A2:A7+B2:B7))*(((J2+K2)<=(D2:D7+E2:E7))+(E2:E7=""))*(M2=H2:H7)*(G2:G7))

eric

En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
1
thibaut_francois
20 oct. 2015 à 09:24
Merci ! ça fonctionne ! Eriiic, comme souvent : balaise :)
Tu peux m'expliquer l'ajout que tu as fait : +(E2:E7="") please ?
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 214
20 oct. 2015 à 19:40
C'est pour remplacer le SI() sur matrice qui obligeait à valider en matriciel le Sommeprod()
+(E2:E7="")

+ est l'équivalent du OU logique.
donc ajoute VRAI sur le test 'heure de fin' ((J2+K2)<=(D2:D7+E2:E7)) si elle est non saisie pour forcer dans ce cas.
eric
0
thibaut_francois
21 oct. 2015 à 21:06
Hinn ! Ok !! Merci
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 214
22 oct. 2015 à 00:40
Tiens, j'avais répondu. Et le post apparait à nouveau comme non lu dans ma liste, bizarre ça...
Je répète donc :
+ est l'équivalent du OU logique.
J'ajoute donc VRAI au test de l'heure si elle est non saisie, pour forcer la validité dans ce cas.

Ce qui permet de se passer du Si() qui nécessite la validation matricielle du Sommeprod()
eric
0
DjiDji59430 Messages postés 4037 Date d'inscription samedi 19 avril 2008 Statut Membre Dernière intervention 26 avril 2024 646
19 oct. 2015 à 13:44
Bonjour,

essaye ça :

=SOMMEPROD((Séjours!$H$2:$H$7=D3)*((Séjours!$A$2:$A$7+Séjours!$B$2:$B$7)<=(Prestation!A3+Prestation!B3))*SI(Séjours!$D$2:$D$7<>0;(Séjours!$D$2:$D$7+Séjours!E3:E8)>=(Prestation!A3+Prestation!B3);1)*(Séjours!$G$2:$G$7))
0
thibaut_francois
19 oct. 2015 à 15:03
Merci Djidji, mais j'ai l'impression que ça fonctionne pour les N° Dossier qui n'ont pas de date de sortie... mais plus pour les autres cas (quand je descends la formule)
0
DjiDji59430 Messages postés 4037 Date d'inscription samedi 19 avril 2008 Statut Membre Dernière intervention 26 avril 2024 646 > thibaut_francois
19 oct. 2015 à 19:39
re,
J'ai repris ce que tu as écris, et maintenant, ça a l'air de fonctionner !
https://www.cjoint.com/c/EJtrNEC0EaV
0
thibaut_francois
20 oct. 2015 à 09:06
^^ Toujours casse tête :D
La 1ère ligne rapporte 0, alors qu'elle devrait mettre la chambre 3320... Et la 3ème ligne cumule les 3 N° de chambre pour un résultat de 9975 au lieu de 3327.
0
DjiDji59430 Messages postés 4037 Date d'inscription samedi 19 avril 2008 Statut Membre Dernière intervention 26 avril 2024 646 > thibaut_francois
Modifié par DjiDji59430 le 20/10/2015 à 18:50
re

Ça fonctionne, mais je ne sais pas pourquoi, il faut revalider a chaque fois la nouvelle cellule, ou la cellule modifiée

re
j'ai changer de fichier, et cette fois, il n'y a plus ce probléme.
https://www.cjoint.com/c/EJuqXNRdLYV

PS: ton fichier a l'air "pourri" !
0
thibaut_francois
21 oct. 2015 à 21:06
^^
0