Formule sous excel Durée de Séjours

Résolu/Fermé
thibaut_francois
Messages postés
96
Date d'inscription
mardi 27 septembre 2011
Statut
Membre
Dernière intervention
14 avril 2021
- Modifié par thibaut_francois le 5/03/2012 à 22:23
thibaut_francois
Messages postés
96
Date d'inscription
mardi 27 septembre 2011
Statut
Membre
Dernière intervention
14 avril 2021
- 10 avril 2012 à 11:46
Bonjour à tous,

J'ai besoin de votre aide pour une formule, pas banale, sous excel.

Ci-joint un bout de ma base de données.

On trouve, date entrée, mode entrée, date de sortie, mode de sortie et l'unité d'hébergement.

Le but : calculer une durée de séjour en fonction du choix de la période et donc de l'intervalle de temps choisi... Pour exemple Fin Mars = du 1er janvier au 31 mars (inclus)

L'idée serait qu'en fonction du choix de la période que j'indique, les durées de séjour se recalculent automatiquement en respectant les règles :

- Durée Séjour = Date de Sortie - Date d'Entrée
- Si Date de Sortie = Date d'Entrée alors Durée de Séjour = 1
- Si le mode de sortie = SD, alors Date de Sortie - Date d'Entrée + 1

Merci de votre aide.
A voir également:

8 réponses

gbinforme
Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 606
7 mars 2012 à 12:21
bonjour,

C'est vrai que tu ne t'ai pas facilité la tache avec la conception de ton classeur :)

Regardes si cela correspondons à ton attente :

https://www.cjoint.com/?BChmtjcrHBv
3
thibaut_francois
Messages postés
96
Date d'inscription
mardi 27 septembre 2011
Statut
Membre
Dernière intervention
14 avril 2021
1
7 mars 2012 à 16:26
C'est exactement le résultat attendu!! Est-ce que tu peux m'expliquer la formule ? Je ne connais pas du tout l'utilisation de "dmoi=FIN.MOIS"

J'ai vu sur internet qu'il fallait l'activiter dans macros complémentaires, car au départ, la formule ne fonctionnait pas et passait en #NOM?

J'ai juste repéré une anomalie : quand la personne reste un mois complet, la formule me calcule une durée de séjour = au nb de jour du mois -1.

Choix de la période --> Mois de Janvier

Date Entrée Mode Entrée Date Sortie Mode Sortie UF_Héb Durée Séjour
03/10/2011 EN 08/10/2012 SH 2800 30

Alors que ça devrait être 31.

Pour la conception du classeur... Je ne suis pas attaché à la mise en forme Gbinforme...
Tu peux ajouter, moduler comme tu veux si ça te simplifie le travail. Il faut juste que je garde mes infos de base (Dates, Modes, Uf Héb et bien évidemment Durée de Séjour).

Merci de ton aide.
0
gbinforme
Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 606
7 mars 2012 à 21:26
Bonsoir thibaut_francois,

Effectivement FIN.MOIS demande une validation, il y a si longtemps... :)

Tu as raison sur ton anomalie que j'avais vue après publication : ce n'est pas la fin de mois qu'il faut avoir mais le début suivant.

Voici ton classeur avec 2 feuilles différentes donnant les mêmes résultats à choisir :

https://www.cjoint.com/?BChvq1RDa7D


Je t'ai mis les explications de calcul de la formule : sélection du cadre et suppression pour enlever les objets ajoutés.
0
thibaut_francois
Messages postés
96
Date d'inscription
mardi 27 septembre 2011
Statut
Membre
Dernière intervention
14 avril 2021
1
9 mars 2012 à 09:32
C'est tout simplement hallucinant!! Je suis vraiment admiratif du boulot!!
Une grand merci Gbinforme!!
Le résultat est tout à fait ce que je souhaitais !!
Et un grand merci pour les explications, je vais potasser celà pour essayer de m'approprier la technique.

2 modulations à apporter :

- il arrive parfois au moment de mon extraction de données, qu'un patient ne soit pas encore sorti. A ce moment, je n'ai pas de date de sortie.
Si la date d'entrée est sur l'année 2012, ça me calcule très bien la durée de séjour.
Par contre, si la date d'entrée est sur 2011, la formule me met 0 comme durée de séjour.

Choix de la période --> Mois de Janvier

Date Entrée Mode Entrée Date Sortie Mode Sortie UF_Héb Durée Séjour
26/12/2011 EN 3333 0

La durée de séjour devrait être égale à 31 jours.

- la journée supplémentaire lorsqu'il y a un mode de sortie SD doit compter pour le mois de sortie.

Choix de la période --> Mois de Janvier

Date Entrée Mode Entrée Date Sortie Mode Sortie UF_Héb Durée Séjour
30/01/2012 EN 03/02/2012 SD 3333 3

En durée sur Janvier, je devrais avoir 2.
En durée sur Février, je devrais avoir 3.

J'espère que ça ne demande pas trop de modifications pour toi... que ça ne te complique pas la tâche...

Peux-tu également m'ajouter une colonne "Période" à côté de celle "Durée de Séjour" ?
Le but étant :
--> si la date d'entrée est dans le mois choisi en E1, alors 1, sinon 0.
C'est pour calculer le nombre de mouvements dans le mois sélectionné.
0
gbinforme
Messages postés
14934
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 606
9 mars 2012 à 21:39
Bonsoir thibaut_francois,

Voici ton classeur avec :
- les 2 modulations à apportées
- la colonne "Période"
- le calcul du nombre de mouvements dans le mois sélectionné

https://www.cjoint.com/?BCjvILjAUIH

Bonne soirée à toi.
0
thibaut_francois
Messages postés
96
Date d'inscription
mardi 27 septembre 2011
Statut
Membre
Dernière intervention
14 avril 2021
1
12 mars 2012 à 09:18
Extra ! Extra ! Extra !

C'est génial ! J'imagine déjà le gain de temps grâce à toi !

J'avoue avoir du mal à décortiquer les formules... Mais en les utilisant une par une bien distinctement, j'espère bien pouvoir les ré-utiliser.

Encore un énorme merci à toi !
0
eriiic
Messages postés
24381
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
16 mai 2022
7 068
Modifié par eriiic le 5/03/2012 à 23:17
Bonsoir,

déposer le fichier (de préférence en .xls si tu veux que plus de personnes le voit) sur cjoint.com et coller ici le lien fourni.
eric
1
thibaut_francois
Messages postés
96
Date d'inscription
mardi 27 septembre 2011
Statut
Membre
Dernière intervention
14 avril 2021
1
6 mars 2012 à 09:56
Merci, j'ai pu mettre mon fichier...
0
thibaut_francois
Messages postés
96
Date d'inscription
mardi 27 septembre 2011
Statut
Membre
Dernière intervention
14 avril 2021
1
6 mars 2012 à 07:29
Voilà le lien pour que mon idée soit bien assimilée ^^

Merci de votre aide

https://www.cjoint.com/?0CghAGvo5KX
1
thibaut_francois
Messages postés
96
Date d'inscription
mardi 27 septembre 2011
Statut
Membre
Dernière intervention
14 avril 2021
1
5 mars 2012 à 22:26
Je ne parviens pas à inclure mon fichier excel... Arf
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
rachid_04
Messages postés
197
Date d'inscription
lundi 31 mars 2008
Statut
Membre
Dernière intervention
12 août 2012
32
5 mars 2012 à 23:25
est ce que c'est juste :
quand Mode entrée = SD ; ET DS - DE = 0 >>> la durée de séjour =2
0
thibaut_francois
Messages postés
96
Date d'inscription
mardi 27 septembre 2011
Statut
Membre
Dernière intervention
14 avril 2021
1
6 mars 2012 à 09:53
Non Rachid... Si Date de Sortie = Date d'Entrée & Mode de Sortie SD alors ça reste 1 jour.
0
rachid_04
Messages postés
197
Date d'inscription
lundi 31 mars 2008
Statut
Membre
Dernière intervention
12 août 2012
32
5 mars 2012 à 23:37
F2=SI(ET(C2-A2=0;D2="SD");C2-A2+2;SI(ET(C2-A2=0;D2<>"SD");1;SI(ET(C2-A2>0;D2="SD");C2-A2+1;SI(ET(C2-A2>0;D2<>"SD");C2-A2))))

Colonne A date entrée
Colonne B mode entrée
Colonne C date de sortie
Colonne D mode de sortie
Colonne E unité d'hébergement
Colonne F Durée de Séjour
0
eriiic
Messages postés
24381
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
16 mai 2022
7 068
Modifié par eriiic le 5/03/2012 à 23:50
Bonsoir,

le demandeur n'a pas encore dit comment il indiquait dans la feuille la période à prendre en compte.
'fin mars' c'est vague, là tu prends la totalité...

eric
0
thibaut_francois
Messages postés
96
Date d'inscription
mardi 27 septembre 2011
Statut
Membre
Dernière intervention
14 avril 2021
1
6 mars 2012 à 09:57
J'ai apporté plus de clareté à ma demande... Car effectivement, c'est un calcul qui se refraîchit en fonction du mois sélectionné dans la case E1 de mon fichier.
0
Raymond PENTIER
Messages postés
56069
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
17 mai 2022
17 210
6 mars 2012 à 02:27
Pour reprendre les références de rachid_04 et sans négliger la remarque d'Eric,
je proposerais la formule =SI(C2=A2;1;C2-A2+SI(D2="SD";1;0))
0
thibaut_francois
Messages postés
96
Date d'inscription
mardi 27 septembre 2011
Statut
Membre
Dernière intervention
14 avril 2021
1
6 mars 2012 à 09:56
La formule est bonne. Mais en fait, ce que je souhaiterai, c'est qu'elle tienne compte du choix du mois (voir le fichier joint introduit grâce à la méthode renseignée par ériiic).

Je voudrais que ça recalcule en fonction du choix du mois dans la case E1.

C'est là que ça devient compliqué ^^
0
Raymond PENTIER
Messages postés
56069
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
17 mai 2022
17 210
6 mars 2012 à 22:01
Il fallait le dire dès le début ! Parce que ça change tout ...
0
thibaut_francois
Messages postés
96
Date d'inscription
mardi 27 septembre 2011
Statut
Membre
Dernière intervention
14 avril 2021
1
7 mars 2012 à 09:16
Bah je l'avais indiqué Raymond ^^

--> "Le but : calculer une durée de séjour en fonction du choix de la période et donc de l'intervalle de temps choisi... "

Ca n'avait sûrement pas été très clair du fait de n'avoir pu insérer mon fichier xls.

Je sais que ça change tout, et que là est la difficulté de ma demande. Et c'est pour ça que je fais appel à vos compétences, bien supérieures aux miennes. ^^
0
Raymond PENTIER
Messages postés
56069
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
17 mai 2022
17 210
6 mars 2012 à 02:40
Au cas où la réponse au post #3 serait 2 (ce qui me surprendrait), la formule deviendrait =SI(C2=A2;1;C2-A2)+SI(D2="SD";1;0)
* juste une parenthèse à déplacer ...
0