Problème conversion en chronomètre [Résolu]

cs_tino67 15 Messages postés lundi 9 février 2009Date d'inscription 23 mars 2015 Dernière intervention - 1 juin 2010 à 13:08 - Dernière réponse : cs_tino67 15 Messages postés lundi 9 février 2009Date d'inscription 23 mars 2015 Dernière intervention
- 6 juin 2010 à 19:46
Bonjour j'ai cette procédure pour transformer un long en mode 00h 00mn 00s 00ms
mais le problème que ça affiche 1mn 60 au lieu de 2mn 00 et pareil pour les ms 1s 100ms au lieu de 2s 00ms.

auriez vous un idée pour ce problème ou existerait_il un fonction toute faite qui transforme directement un long ou un string en format horaire voulu (j'ai une procedure avec le ms et une autre sans)

je travaille sur VB 2008

Public Function horloge(ByVal t As Long) As String 'temps en ms
Dim h As Long 'heures
Dim m As Long 'minutes
Dim s As Long 'secondes
Dim millis As Long 'ms

h = t \ 3600000
m = ((t \ 1000) Mod 3600) \ 60
s = (t \ 1000) Mod 60
millis = (t Mod 1000) / 10 ' au centieme

If h = 0 Then
horloge = (m & "mn " & s & "s " & millis) 'temps de course en direct
Else
horloge = (h & "h " & m & "mn " & s & "s " & millis) 'temps de course en direct
End If

End Function


j'ai pensé mettre des if s= 60 then s=0 et m = m +1 .... mais risque de faire perdre du temps à mon programme et c'est une peu du bricolage

Merci d'avance
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
NHenry 14229 Messages postés vendredi 14 mars 2003Date d'inscription 14 juillet 2018 Dernière intervention - 1 juin 2010 à 13:40
3
Merci
Bonjour,

J'utilise une autre méthode :
Public Function horloge(ByVal t As Long) As String 'temps en ms
Dim h As Long 'heures
Dim m As Long 'minutes
Dim s As Long 'secondes
Dim millis As Long 'ms

millis = (t Mod 1000) / 10 ' au centieme
t=t\1000
s = t  Mod 60
t=t\60
m = t Mod 60
t=t\60
h = t 

If h = 0 Then
horloge = (m & "mn " & s & "s " & millis) 'temps de course en direct
Else
horloge = (h & "h " & m & "mn " & s & "s " & millis) 'temps de course en direct
End If

End Function 


Je pense que c'est plus simple.

Mon site

Merci NHenry 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 84 internautes ce mois-ci

Commenter la réponse de NHenry
cs_tino67 15 Messages postés lundi 9 février 2009Date d'inscription 23 mars 2015 Dernière intervention - 6 juin 2010 à 19:46
0
Merci
Merci.
Commenter la réponse de cs_tino67

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.