IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

calcul d'heure entre deux date et heure [XL-2003]


Sujet :

Excel

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 89
    Points : 38
    Points
    38
    Par défaut calcul d'heure entre deux date et heure
    Bonjour,

    je souhaiterais calculer le nombre d'heure entre 2 dates et heure de la forme
    dd/mm/yyyy hh:mm

    date de debut en A1 : 05/11/2009 8:00
    date de fin en A2 : 06/11/2009 6:00

    et je voudrais le resultat de la forme hh:mm en A3

    merci d'avance

  2. #2
    Membre éclairé

    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    791
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 791
    Points : 688
    Points
    688
    Par défaut
    formule en anglais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =IF(ROUND((((A2-A1)*24)-INT((A2-A1)*24))*60;0)<>60;IF(INT((A2-A1)*24)<10;0&INT((A2-A1)*24);INT((A2-A1)*24))&":"&IF(ROUND((((A2-A1)*24)-INT((A2-A1)*24))*60;0)<10;0&ROUND((((A2-A1)*24)-INT((A2-A1)*24))*60;0);ROUND((((A2-A1)*24)-INT((A2-A1)*24))*60;0));IF((INT((A2-A1)*24)+1)<10;0&(INT((A2-A1)*24)+1);(INT((A2-A1)*24))+1)&":"&"00")
    C'est plein de if pour la mise en page hh:mm (h:m n'aurait pas le probleme, mais la il faut chaque fois ajouter le 0 devant si c'est inférieur a 10)

    Le principe est globalement de prendre tes deux nombres, et de les soustraire
    Ca donne un nombre de jour avec les décimales qui correspondent aux heure et aux minutes

    On multiplie ce nombre de jour par 24, on se retrouve avec un nombre d'heure et les décimales qui correspondent aux secondes

    On prend d'un coté la partie entiere (int(x)), ca donne les heures
    et de l'autre coté les décimales (x - int(x)) qu'on mutiplie par 60, ce qui donne les minutes

    Et apres, c'est juste un peu de mise en forme

    il me semble qu'on est obligé de bidouiller comme ca parce qu'une heure en format officiel, c'est forcement de 0 a 23, que si on dépasse un jour, on repasse a 0 au lieu de monter a 24

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 89
    Points : 38
    Points
    38
    Par défaut
    nikel
    formule un peu longue mais ca fonctionne parfaitement

    merci de ton efficacité et ta rapidité

    A+

  4. #4
    Membre émérite Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Points : 2 662
    Points
    2 662
    Par défaut
    Salut à tous,
    Il me semble que vous compliquez la vie, si j'ai bien compris le résultat attendu est 22h00.
    Suivant l'exemple, si vous essayez de soustraire A1 de A2 en A3 vous obtiendrez le bon résultat !
    En ce qui concerne la récupération des jours et/ou heure minute il y a les fonctions Date et Time
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =Date(year(A1);Month(A1);Day(A1))
    renverra 05/11/2009
    Tandis que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =TIME(HOUR(A1);MINUTE(A1);SECOND(A1))
    renverra 08:00 (pour autant qu'on formate en hh:mm)

    A+

    Edit: si tu veux avoir le résultat en chiffre (22,00) et pas 22:00 qui n'est que le formatage de 0,916666666666667 (comme l'a expliqué EmmanuelleC) tu peux faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =TIME(HOUR(A2-A1);MINUTE(A2-A1);SECOND(A2-A1))*24
    Je dis ça car j'ai finalement un doute sur le résultat attendu...
    N'oubliez pas le si votre problème est solutionné.

  5. #5
    Membre éclairé

    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    791
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 791
    Points : 688
    Points
    688
    Par défaut
    j'ai cru que s'il y avait 36h25 entre les deux donnée, il voulait avoir 36:25 et non pas 12:25
    s'il veut juste 12:25, alors effectivement, il y a des solutions simples, mais s'il veut 36:25; il me semble qu'on ne s'en sortira pas avec time

    [edit] a la réflexion, la formule que j'ai donné posera des petits problemes si la premiere date est supérieur a la second (il va trouver que c'est <10, vu que le résultat sera négatif, et donc rajouter un 0 devant)
    Si c'est un probleme, dit le et je corrigerais la formule

  6. #6
    Membre émérite Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Points : 2 662
    Points
    2 662
    Par défaut
    Citation Envoyé par EmmanuelleC Voir le message
    j'ai cru que s'il y avait 36h25 entre les deux donnée, il voulait avoir 36:25 et non pas 12:25
    En attendant que fullmetalknet précise ce dont il a besoin...
    Pour avoir 36:25 et pas 12:25 le format de cellule est alors [h]:mm au lieu de hh:mm.
    Sinon avec les fonctions Date pour avoir le résultat en chiffre 36,25
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =IF(A2-A1>1;((DATE(YEAR(A2);MONTH(A2);DAY(A2))-DATE(YEAR(A1);MONTH(A1);DAY(A1))-1)*24)+((A2-A1)-(DATE(YEAR(A2);MONTH(A2);DAY(A2))-DATE(YEAR(A1);MONTH(A1);DAY(A1))-1))*24;"")
    A+
    N'oubliez pas le si votre problème est solutionné.

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    660
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 660
    Points : 782
    Points
    782
    Par défaut
    Bonjour,

    Peut-être un peu simpliste, mais cela semble fonctionner :
    cellule au format [hh]:mm

    Pour l'exemple donné cela renvoie bien 22:00
    Si on ajoute un jour à A2 : 46:00

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 89
    Points : 38
    Points
    38
    Par défaut
    merci de vous mettre a plusieurs!!!

    ce que j'ai besoin c'est bien 36:25

    L'idée de Ullan fonctionne parfaitement et beaucoup plus simple

    merci a tous!

  9. #9
    Membre éclairé

    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    791
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 791
    Points : 688
    Points
    688
    Par défaut
    oh, j'ignorais le concept des []
    tres pratique, merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [2014] Calcul de données entre deux dates indéfinies + heure
    Par nLineMayuri dans le forum Développement
    Réponses: 6
    Dernier message: 01/06/2015, 17h06
  2. calcul entre deux date et heure
    Par totor92290 dans le forum IHM
    Réponses: 2
    Dernier message: 15/03/2013, 08h18
  3. Réponses: 3
    Dernier message: 09/09/2010, 17h47
  4. Réponses: 2
    Dernier message: 30/03/2010, 10h25
  5. [SQL] calcul du nombre d'heure entre deux dates
    Par ahmedbj dans le forum Requêtes
    Réponses: 2
    Dernier message: 02/03/2009, 12h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo