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

VBScript Discussion :

Calcul du temps écoulé entre deux heures


Sujet :

VBScript

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Géologue
    Inscrit en
    Septembre 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Niger

    Informations professionnelles :
    Activité : Géologue
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 37
    Points : 27
    Points
    27
    Par défaut Calcul du temps écoulé entre deux heures
    Bonjour tout le monde,

    Je butte sur le problème suivant et j'espère trouver un peu d'aide :

    Dans un fichier Excel j'ai deux cellules (C1 et C2) au format heure (HH:MM:SS). La première contient l'heure de fin d'une action, et la seconde celle du début d'une autre.

    Mon script doit calculer les temps écoulé entre les deux action.

    Le calcul du temps écoulé entre les deux action est simple si C1 < C2.

    Par contre si l'on change de jour / date entre les deux (dans ce cas C2 > C1) ... je ne sais plus comment faire!

    Si vous avez une idée, je suis preneur ... un GRAND Merci d'avance

    voici ou en est mon script :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     	If HeureSortieTiges < HeureDebutDiag Then 
    		TE = HeureDebutDiag - HeureSortieTiges
    		TempEcoule = CDate (TE)
    		HH = Split (TempEcoule, ":") (1)
    		MM = Split (TempEcoule, ":") (2)
    		TempEcoule = HH & " H " & MM
    	End If
     
    	'C'est la que je n'y arrive pas!
    	If HeureSortieTiges > HeureDebutDiag Then
    		?????
    	End If

  2. #2
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    Bonjour,

    avant d'aller plus loin d'où viennent ces informations d'heure début et fin ? n'est-ce pas possible d'y rajouter la date ?


    Question annexe : Pourquoi poster dans le forum VBScript ?

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Géologue
    Inscrit en
    Septembre 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Niger

    Informations professionnelles :
    Activité : Géologue
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 37
    Points : 27
    Points
    27
    Par défaut
    Bonjour Bbill,

    Je vais commencer à l'envers!

    Je poste ici car cela fait parti d'un script qui me sert à faire fonctionner un programme. Je prend des données provenant d'un fichier Excel pour les y injecter.

    Il est éventuellement possible d'y ajouter la date ... Mais! car il y a un mais! J'aimerais faire sans, pour éviter les erreurs ... qui sont fréquentes ici.

    Je vais explorer l'idée en ajoutant de fausses dates (J et J-1), directement dans le script, et qui ne proviendront pas du fichier Excel.

    Merci pour l'idée!

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Géologue
    Inscrit en
    Septembre 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Niger

    Informations professionnelles :
    Activité : Géologue
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 37
    Points : 27
    Points
    27
    Par défaut
    Bbil,

    Voici ce que j'ai trouvé! Ce n'est sans doute pas ce qu'il y a de mieux, mais cela fonctionne et fait ce dont j'ai besoin.

    Encore merci pour ton idée!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    	If HeureSortieTiges < HeureDebutDiag Then 
    		TE = HeureDebutDiag - HeureSortieTiges
    		TempEcoule = CDate (TE)
    		HH = Split (TempEcoule, ":") (1)
    		MM = Split (TempEcoule, ":") (2)
    		TempsEcoule = HH & " H " & MM
    	End If
     
    	If HeureSortieTiges > HeureDebutDiag Then
    		D1 = "01 janvier 2013"
    		HST = CDate (D1) & " " & CDate(HeureSortieTiges)
    		D2 = "02 janvier 2013"
    		HDD = CDate (d2) & " " & CDate(HeureDebutDiag)
    		DureeMin = DateDiff ("n", HST, HDD)
    		HH = Int (DureeMin /60)
    		if Len (HH) = 1 Then HH = "0" & HH
    		MM = DureeMin - (60*HH)
    		if Len (MM) = 1 Then MM = "0" & MM
    		TempsEcoule = HH & " H " & MM
    	End If

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

Discussions similaires

  1. [Débutant] Calcul d'un intervalle entre deux heures
    Par Agent_J dans le forum VB.NET
    Réponses: 12
    Dernier message: 21/03/2017, 11h59
  2. Calculer le temps écoulé entre deux dates
    Par ramoucha23 dans le forum Collection et Stream
    Réponses: 8
    Dernier message: 25/08/2016, 17h48
  3. [Débutant] Calculer le temps écoulé entre deux heures
    Par amine_angel80 dans le forum Assembleur
    Réponses: 2
    Dernier message: 28/05/2008, 16h23
  4. calculer la temps moyen entre deux dates
    Par zainabsourid dans le forum BIRT
    Réponses: 1
    Dernier message: 24/07/2006, 12h06
  5. [Dates] Calcul d'une différence entre deux heures
    Par loreleï85 dans le forum Langage
    Réponses: 12
    Dernier message: 28/06/2006, 11h43

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