Nombre de jour en fonction d'une date

Résolu/Fermé
Co_nexion Messages postés 328 Date d'inscription lundi 5 mars 2012 Statut Membre Dernière intervention 15 juillet 2015 - 16 mai 2012 à 11:55
Co_nexion Messages postés 328 Date d'inscription lundi 5 mars 2012 Statut Membre Dernière intervention 15 juillet 2015 - 22 mai 2012 à 10:28
Bonjour,

Je souhaite calculer (automatiquement) le nombre de jours de présence en fonction de la date d'arrivée et de la date de départ.

Par exemple un personne arrive le 20/05/2012 et pars le 10/08/2012,
Nombre de jours en mai : 11
Nombre de jours juin : 30
Nombre de jours juillet : 31
nombre de jours août : 10

Merci d'avance pour votre aide que ce soit avec une formule ou une macro

Arthur

6 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 395
16 mai 2012 à 14:40
Bonjour
et vous voulez le nombre de jours au total ou le détail par mois?
à vous lire
2
Co_nexion Messages postés 328 Date d'inscription lundi 5 mars 2012 Statut Membre Dernière intervention 15 juillet 2015
16 mai 2012 à 14:57
Bonjour Vaucluse,

Il me faudrait le détail par mois mais concernant le mois en cours
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 395
16 mai 2012 à 15:27
donc je confirme la proposition ci dessous soit donc là!
https://www.cjoint.com/?BEqprq5clfd
à partir de votre modèle.
crdlmnt
0
Co_nexion Messages postés 328 Date d'inscription lundi 5 mars 2012 Statut Membre Dernière intervention 15 juillet 2015
16 mai 2012 à 16:26
Merci pour cette proposition,

Je ne comprends pas à quoi correspond le "d" dans cette formule et c'est celui ci qui me pose, à mon avis probleme pour le transfert dans mon fichier.
Et je ne comprends pas très bien les commentaires laissé
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 395
Modifié par Vaucluse le 16/05/2012 à 17:37
Le d entre guillemets correspond au code qui calcule le nombre de jours entre deux dates dans DATEDIF (y pour année et m pour mois). Il ne doit pas poser de problème.

par contre,si vous voulez utiliser la formule dans un autre fichier (le modèle, c'est cependant le votre ?)vous devez:
soit nommer les cellules où sont entrées les dates limites du mois cherché
soit remplacer les noms "deb" et "fin" par l'adresse de ces cellules bloquées par les signes $.pour pouvoir tirer la formule sur la hauteur utile.
bonne chance

Ps: le commentaire porte surtout sur le fait que dans le fichier que vous avez soumis, les dates en colonne début et fin ne sont pas des valeurs numériques, mais des textes, ce qui inerdit l'application de calcul. Vérifiez dans votre fichier définitif que ces dates soient bien des nombres (de l'ordre de 45000) lorsque vous formatez les cellules en standard.
Sinon appliquez la méthode collage spécial.
0
Co_nexion Messages postés 328 Date d'inscription lundi 5 mars 2012 Statut Membre Dernière intervention 15 juillet 2015
18 mai 2012 à 10:35
Merci Vaucluse pour ces réponses.
Cependant, je reste un peu bloqué pour adapter cette formule... Mes compétences étant un peu limité en excel, ne serait-il pas possible d'avoir une macro qui allegerait le tableur excel et qui ne m'obligerait pas à tirer la formule sur toute la colonne ?
0
Linukcs Messages postés 79 Date d'inscription lundi 12 octobre 2009 Statut Membre Dernière intervention 10 octobre 2012 14
16 mai 2012 à 12:02
Bonjour.

En quel langage ou sous quel logiciel voulez-vous le résultat?

Je vous remercie de bien vouloir me répondre pour que je puisse vous apporter une solution rapide.
0
Co_nexion Messages postés 328 Date d'inscription lundi 5 mars 2012 Statut Membre Dernière intervention 15 juillet 2015
16 mai 2012 à 12:43
Bonjour Linukcs,

je souhaite développer sous excel
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
Modifié par lermite222 le 16/05/2012 à 13:37
Bonjour,
Quel version d'Excel ?
Tu veux pour chaque mois ou le total ?
A+
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
0
Co_nexion Messages postés 328 Date d'inscription lundi 5 mars 2012 Statut Membre Dernière intervention 15 juillet 2015
18 mai 2012 à 10:37
Bonjour lermite222,

Il s'agit de la version 2003 d'excel mais il faudrait aussi que cela marche sur les versions ultérieurs.
De plus, il me faut le total pour chaque mois
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 395
16 mai 2012 à 15:19
Bonjour

peut être une option ici, voyez le modèle:
Nota: dans votre fichier les valeurs dates sont des textes qui ne permettent pas le calcul. Voyez en nota dans le modèle la méthode appliquée pour les transformer.

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

crdlmnt
0

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

Posez votre question
vordano Messages postés 1682 Date d'inscription mardi 12 juillet 2011 Statut Membre Dernière intervention 20 juillet 2012 316
16 mai 2012 à 17:33
en vba:
DateDiff("d",date1,date2)

en formule excel
DATEDIF(datedelivraison;datedujour;"d")

trouvé avec 1 requète sur google
0
Linukcs Messages postés 79 Date d'inscription lundi 12 octobre 2009 Statut Membre Dernière intervention 10 octobre 2012 14
16 mai 2012 à 14:04
Re.

Bon, j'ai étudié la question et j'ai réussi à faire quelque chose. Cependant, ne connaissant pas Visual Basic, j'ai fait un algorithme qui devrait aider.

Donc voici la solution sans Visual Basic :

- Noter dans ceux cases dont on gardera la référence (pour moi, B2 et C2) les dates d'arrivée et de départ.
- Noter dans une case une date d'origine au format MM/AAAA (exemple: 01/2012)
- Sélectionner cette case et faire glisser lle carré en bas à droite à la verticale. (Pour moi, à partir de A4)
- Insérer la formule " =ANNEE(IZZY)*12-ANNEE(A4)*12+MOIS(IZZY)-MOIS(A4) " dans B4, puis sélectionner cette case et la faire glisser le carré en bas à droite à la verticale
- Insérer la formule " =ANNEE(IZZY)*12-ANNEE(A4)*12+MOIS(IZZY)-MOIS(A4) " dans C4, puis sélectionner cette case et la faire glisser le carré en bas à droite à la verticale
- Sélectionner {B4:B...} , faire Ctrl+F, aller dans Remplacer et remplacer IZZY par B2;
- Sélectionner {C4:C...} , faire Ctrl+F, aller dans Remplacer et remplacer IZZY par C2;
- Insérer la formule "=SI(ET(B4 <= 0;C4>=0);SI(B4=0;A5-IZZY-1;SI(C4=0;IZZA-A4+1;A5-A4));0)" dans D4 puis sélectionner cette case et la faire glisser le carré en bas à droite à la verticale;
- Sélectionner {D4:D...} , faire Ctrl+F, aller dans Remplacer et remplacer IZZY par B2 et IZZA par C2

Normalement, ça marche.
Et voici le fichier pour mieux comprendre :
http://www.linukcs.net/Date.xls
-4
Co_nexion Messages postés 328 Date d'inscription lundi 5 mars 2012 Statut Membre Dernière intervention 15 juillet 2015
16 mai 2012 à 14:36
Merci pour ta réponse rapide Linucks,

Cependant cette application me parait très compliqué pour mon fichier.
Je t'en joint un exemple pour que tu comprenne mieux : https://www.cjoint.com/?BEqoJQK5N3V
Il s'agit de remplir de manière automatique la "colonne M" en fonction du mois en cours.

Merci
0
Linukcs Messages postés 79 Date d'inscription lundi 12 octobre 2009 Statut Membre Dernière intervention 10 octobre 2012 14
16 mai 2012 à 15:10
Je te cherche ça au plus vite.
Pour appliquer ma "formule avec des SI", faut arrondir le mois de saisie au premier du mois.
0