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 des heures ne fonctionne plus


Sujet :

Excel

  1. #1
    Candidat au Club
    Inscrit en
    Septembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 7
    Points : 4
    Points
    4
    Par défaut Calcul des heures ne fonctionne plus
    Bonjours à tous et à toutes

    J'ai créé un tableau qui effectue le calcul des heures de travail hebdomadaire.
    Le tout fonctionne bien....mais afin de faciliter la saisie des heures j'ai personnalisé les cellules avec ce format 00":"00 pour ne taper que les chiffres des heures et des minutes sans avoir à taper le séparateur des heures ":" .

    Le résultat est que les cellules n'étant plus au format HEURES le calcul des heures ne fonctionne plus.

    Peut-on contourner le problème?

    merci de votre aide

  2. #2
    Membre émérite
    Avatar de cb_60
    Homme Profil pro
    Chargé de mission technique
    Inscrit en
    Juillet 2007
    Messages
    1 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Chargé de mission technique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 253
    Points : 2 375
    Points
    2 375
    Billets dans le blog
    14
    Par défaut
    bonjour
    Je pense que tu dois faire de cette façon
    avec A1 et B1 les cellules qui ont ton format personnalisés
    L'imagination est plus importante que le savoir.... A . Einstein.
    https://www.developpez.net/forums/blogs/179588-cb_60/
    Merci de cliquer sur pour clore cette discussion.

  3. #3
    Candidat au Club
    Inscrit en
    Septembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Bonjour CB60

    J'ai essayé ta méthode.... mais sans succés.

    Mon tableau calcul de la façon suivante :

    (cellule heure de fin - cellule heure de début) - cellule temps de pause

  4. #4
    Membre éprouvé
    Avatar de ouisansdoute
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    931
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 931
    Points : 1 079
    Points
    1 079
    Par défaut
    Bonjour,

    si tu saisis 0330 dans ta cellule, avec le format définit elle aura la forme 03:30 mais le chiffre saisi sera bien 330

    si tu saisis dans une cellule au format heure:minute Excel 3heures 30 la valeur numérique stockée sera 0,145833333333333.

    pour conserver ton format personnalisé il faut donc jongler avec plusieurs paramètres pour la convertir.
    A mon avis le mieux serait peut-être de renoncer à ton format personnalisé.

    Mais je ne connais pas toutes les ressources d'Excel...

  5. #5
    Candidat au Club
    Inscrit en
    Septembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Bonjour Ouisansdoute

    Oui je pense aussi, mais la saisie serait tellement plus simple et rapide. Je vais tenter une methode avec cellules cachées de conversion.

    Te remercie de ta réponse et vous tiens informé de la progression ou de la résolution de mon problème.

    merci

  6. #6
    Membre éprouvé
    Avatar de ouisansdoute
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    931
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 931
    Points : 1 079
    Points
    1 079
    Par défaut
    Je précise que, lorsque tu rentres 3:30 dans une cellule au format hh:mm Excel, en fait il s'agit de 3h30 le 1/1/1900 ce qui complique un peu les choses...

    si on parle de 3h30 du matin, le 5 octobre 2008 la valeur numérique Excel correcte est 39726,145833

  7. #7
    Futur Membre du Club
    Inscrit en
    Septembre 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    Pour ce qui est de la facilité du saisi, tu as raison c'est plus simple de saisir seulement les chiffres, et en voici la méthode que j'aurais utilisé :

    pour la colonne du saisi tu la mets sous format "Texte" et une autre à coté avec la formule ci après tu aura un calcul juste des heures.

    Formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CONCATENER((STXT(A1;1;2));":";(STXT(A1;3;2)))
    Cellule A1 = 0330 -> 03:30

    j'espère que c'est ce que tu cherche !!

  8. #8
    Membre éprouvé
    Avatar de ouisansdoute
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    931
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 931
    Points : 1 079
    Points
    1 079
    Par défaut
    L'idée est bonne mais STXT ne fonctionne correctement que si l'heure est supérieure ou égale à 10 car si la saisie est 0220 elle se présentera 02:20 en fonction du format personnalisé, sera égale à 220 comme valeur numérique, mais le STXT(A1;1;2) donnera 22 et non pas 2.

  9. #9
    Futur Membre du Club
    Inscrit en
    Septembre 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 13
    Points : 8
    Points
    8
    Par défaut
    J'avoue que je n'ai pas trop compris le raisonnement de "ouisansdoute" mais le but de l'opération est bien de calculer le temps de travail non ?

    Dans mon cas on est au bureau à 8h00 on a une pause de 1h00 so on
    travail 8h00 la journée non ?

    Colonne A............Colonne B.............Colonne C............Colonne D
    heure de début.....temps de pause.....heure de fin..........Résultat
    0800................... 0100................... 1700................... 8:00


    Formule de la cellule Résultat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    = ((CONCATENER((STXT(C1;1;2));":";(STXT(C1;3;2))))-(CONCATENER((STXT(A1;1;2));":";(STXT(A1;3;2)))))-(CONCATENER((STXT(B1;1;2));":";(STXT(B1;3;2))))

  10. #10
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    A toutes fins utiles si vous n'êtes pas allergique aux macros ou interdit de macros par votre entreprise vous pouvez copier ce code dans la fenêtre VBA et sur la feuille contenant vos données après avoir formaté les cellules en texte :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column > 3 Then
    Exit Sub
    Else
        hm = Target.Value
        hm = Left(hm, 2) & ":" & Right(hm, 2)
        Target.Value = hm
    End If
    End Sub
    Si les données ne sont pas dans les 3 1ères colonnes vous pouvez adapter la 2ème ligne, exemple si la 1ère colonne est "C" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Target.Column < 3 and Target.Column > 5 Then

  11. #11
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 918
    Points
    55 918
    Billets dans le blog
    131
    Par défaut
    Bonsoir

    Si tu saisis 330 pour 3:30 et 1745 pour 17:45, tu peux utiliser une formule de conversion. Avec ta saisie en A1, tu peux utiliser la formule
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =(ENT(A1/100)+(A1/100-ENT(A1/100))/60*100)/24
    en mettant la cellule de la formule au format [h]:mm

    Une autre façon est d'utiliser la fonction TEMPS.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =TEMPS(GAUCHE(A1;NBCAR(A1)-2);DROITE(A1;2);0)
    Tu dois évidemment utiliser ces formules au sein de ton calcul...

    Mais je rejoins Ouisansdoute. Je ne vois pas trop le problème de saisir la valeur avec les :, ce qui traduit la saisie directement en valeur "horaire"...
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  12. #12
    Candidat au Club
    Inscrit en
    Septembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Bonjour à tous et merci pour vos réponses

    Désolé de ne m'être pas manifesté plus tôt mais je ne suis disponible que le week end ... boulot oblige !!

    J'ai bien noté vos remarques et vos conseils et me lance de suite dans leurs applications ... je vous tiens informé.

  13. #13
    Membre chevronné Avatar de wilfried_42
    Homme Profil pro
    Auto-entrepreneur
    Inscrit en
    Novembre 2006
    Messages
    1 427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Auto-entrepreneur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 427
    Points : 1 900
    Points
    1 900
    Par défaut
    Bonjour à tous

    pour simplifier la lecture dans les formules, tu peux aussi définir la formule comme une cellule nommée

    exemple : tes heures saisies sont en colonne A

    Menu insertion / Nom / Definir
    Le nom de la plage : tmps
    la formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =(GAUCHE(Feuil1!$A1;NBCAR(Feuil1!$A1)-2) & ":" & DROITE(Feuil1!$A1;2))*1
    ensuite en B1 tu mets =tmps pour transformer A1, tu tires vers le bas pour transformer les autres
    Wilfried

  14. #14
    Candidat au Club
    Inscrit en
    Septembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Bonjour et merci Wilfried 42

    J'aurais une question pour Jacques Jean, quand on indique le code
    If Target.Column < 3 and Target.Column > 5 Then

    cela signfie " entre la 3ème et 5ème colonne " n'est-ce pas ? corrigez moi si je me trompe.

    Si c'est le cas je souhaiterais savoir si je peux limiter ce code seulement à certaines cellules.

    Par exemple: dans la colonne "C" appliquer le code aux cellules "C3,C4,C5" puis aux cellules "C9,C10,C11", dans la colonne "F" aux cellules "F3,F4,F5" puis "F9,F10,F11" etc....

    car certaines cellules ont un format texte défini comme "DATE" "HEURE DE DEBUT" .... " TOTAL DES HEURES EFFECTUEES" et désire qu'elles restent protégées contre une saisie involontaire.

    merci

Discussions similaires

  1. [Table Paradox] Calculer des heures
    Par pierrot67 dans le forum Bases de données
    Réponses: 1
    Dernier message: 26/04/2007, 12h37
  2. [Expression]calculer des heures et euros
    Par isodoro dans le forum VBA Access
    Réponses: 8
    Dernier message: 03/04/2007, 14h47
  3. Comment calculer des heures sur access
    Par chakib47 dans le forum Access
    Réponses: 2
    Dernier message: 09/03/2007, 13h38
  4. calcul des heures
    Par meddeb2001 dans le forum Access
    Réponses: 2
    Dernier message: 06/07/2006, 17h55
  5. probleme avec le calcul des heures
    Par aibar dans le forum Access
    Réponses: 1
    Dernier message: 14/06/2006, 00h38

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