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

Macros et VBA Excel Discussion :

[VBA-E] Chrono dans un UserForm


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 50
    Points : 47
    Points
    47
    Par défaut [VBA-E] Chrono dans un UserForm
    Bonsoir à tous

    Je suis en train de réaliser une petite application de gestion de courses sous Excel avec VBA...
    Pour rester simple j'ai deux zones de texte dans un UserForm, une pour l'heure de départ, l'autre pour l'heure d'arrivée, dans lesquels les utilisateur rentres les temps sous la forme HHMMSSDC mais je n'arrive pas à soustraire les 2 zones texte en gardant la précision au centième

    Quelqu'un sait comment faire ???

    Merci d'avance

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Un chrono au millième de seconde, ça t'irait ? Jète un oeil ici
    A+

  3. #3
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 50
    Points : 47
    Points
    47
    Par défaut
    Heu je n'ai pas trop compris le thread...
    Ils font un chrono mais au click de souris c'est ça ??

    Je veux juste soustraire deux temps... dans mon sport on a pas toujours la chance de voir la ligne de départ

  4. #4
    Membre régulier
    Avatar de mortalino
    Inscrit en
    Janvier 2007
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Janvier 2007
    Messages : 72
    Points : 116
    Points
    116
    Par défaut
    Salut,

    effectivement, si c'est saisie (les temps) manuellement, il va te falloir le coder toi même.

    un indice :
    décompose le temps avec Mid, afin de tout reporter en milisecondes
    HHMMSSDC doit devenir
    HH
    MM
    SS
    DC
    => donc 4 variables

    Ensuite, pour convertir en milisecondes(ms),
    DC tu le multiplies par 10
    SS tu le multiplies par 1 000
    MM tu le multiplies par 60 000
    HH tu le multiplies par 3 600 000
    T'additonnes le tout et t'auras le temps en ms.
    Tu fait ça pour le temps de départ, et d'arrivée, tu soustraits les deux, et voilà, le tour est joué

    @++

  5. #5
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 50
    Points : 47
    Points
    47
    Par défaut
    Heureusement que tu es là... je n'y aurai jamais pensé !
    Merci beaucoup !

    Il n'y a plus qu'a tester si ça marche mais ça va aller comme sur des roulettes

  6. #6
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2006
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2006
    Messages : 50
    Points : 47
    Points
    47
    Par défaut
    Bon voilà j'ai testé, tout marche nickel
    J'ai juste converti les heures et les minutes en centiseconde, ce qui me fait 3 variables au lieu de 4
    Pour ceux qui comme moi cherche a faire la meme chose voici 2 fonctions que j'ai réalisé :
    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
    21
    22
    23
    24
    25
    26
    27
    28
     
    ' FONCTION CONVERTIR LES HEURES EN CENTIEME DE SECONDE
    Function ConvertirTemps(temps)
     
    If Len(temps) = 7 Then
        temps = "0" & temps
    ElseIf Len(temps) = 6 Then
        temps = "00" & temps
    ElseIf Len(temps) = 5 Then
        temps = "000" & temps
    ElseIf Len(temps) < 5 Then
        MsgBox "L'heure rentrée n'est pas valide, merci de rentrer un temps supérieur à 59 seconde 99", vbCritical, "Gestion des courses"
        Exit Function
    ElseIf Len(temps) > 8 Then
        MsgBox "L'heure rentrée n'est pas valide, merci de rentrer un temps inférieur à un jour", vbCritical, "Gestion des courses"
        Exit Function
    End If
     
    varHeures = Mid(temps, 1, 2)
    varMinutes = Mid(temps, 3, 2)
    varCSecondes = Mid(temps, 5, 4)
     
    varCHeures = Val(varHeures) * 360000
    varCMinutes = Val(varMinutes) * 6000
     
    ConvertirTemps = Val(varCSecondes) + varCMinutes + varCHeures
     
    End Function
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
     
    ' FONCTION CONVERTIR LES CENTIEMES DE SECONDE EN HEURES/MINUTES/SECONDES/DIXIEME ET CENTIEME DE SECONDE
    Function ReconvertirTemps(temps)
     
    varHeures = Int(temps / 360000)
    If varHeures <> 0 Then
     
        varMinutes = (temps - (Val(varHeures) * 360000))
        varMinutes = Int(varMinutes / 6000)
     
        varCSecondes = (temps - ((Val(varMinutes) * 6000) + (Val(varHeures) * 360000)))
     
        If Len(varMinutes) = 1 Then
            varMinutes = "0" & varMinutes
        ElseIf Len(varMinutes) = 0 Then
            varMinutes = "00"
        ElseIf Len(varCSecondes) = 3 Then
            varCSecondes = "0" & varCSecondes
        ElseIf Len(varCSecondes) = 2 Then
            varCSecondes = "00" & varCSecondes
        ElseIf Len(varCSecondes) = 1 Then
            varCSecondes = "000" & varCSecondes
        ElseIf Len(varCSecondes) = 0 Then
            varCSecondes = "0000"
        End If
     
        ReconvertirTemps = varHeures & varMinutes & varCSecondes
     
    Else
        varMinutes = Int(temps / 6000)
        varCSecondes = (temps - (Val(varMinutes) * 6000))
     
        If Len(varCSecondes) = 3 Then
            varCSecondes = "0" & varCSecondes
        ElseIf Len(varCSecondes) = 2 Then
            varCSecondes = "00" & varCSecondes
        ElseIf Len(varCSecondes) = 1 Then
            varCSecondes = "000" & varCSecondes
        ElseIf Len(varCSecondes) = 0 Then
            varCSecondes = "0000"
        End If
     
        ReconvertirTemps = varMinutes & varCSecondes
    End If
     
     
    End Function
    La première fonction converti le temps entré sous la forme HHMMSSDC en centiseconde et la 2e permet de convertir un temps en centiseconde en un chaine sous la forme HHMMSSDC

    Voilou !
    @ bientôt

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

Discussions similaires

  1. comment associe t-on du code VBA à un bouton dans un userform
    Par AlexFred dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 02/06/2010, 14h52
  2. [VBA-E] TCD dans un Userform
    Par bonilla dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 07/04/2009, 20h02
  3. [VBA-E] Boutons dans un Userform
    Par damsmut dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 17/04/2007, 21h23
  4. [VBA-E] Dessiner dans un userform
    Par conconbrr dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 04/08/2006, 13h56
  5. [VBA excel]graph dans un userform .._
    Par SpaceFrog dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 31/05/2006, 18h45

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