Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2972 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  convertir hh:mm en secondes

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

convertir hh:mm en secondes

n°777350
lemonsoda
Posté le 25-06-2004 à 07:57:30  profilanswer
 

Salut à tous,  
 
je cherche à transformer du temps en décimal?  
 
j'ai un champ1 saisi sous la forme:  
12:38.87 et je voudrais obtenir> 7588.7 dixièmes  
soit 12*600 + 38.87*10  
 
mais je ne sais pas comment faire.  
 
alors merci d'avance pour votre code ou vos propositions.  
 
A+  
Jack

mood
Publicité
Posté le 25-06-2004 à 07:57:30  profilanswer
 

n°777362
JihemAir
Je sais pas
Posté le 25-06-2004 à 08:29:06  profilanswer
 

Code :
  1. Private Function Calc_Dixiemes(strTime As String) As Double
  2. Dim iPos As Integer
  3. Dim dblTemps As Double
  4.     ' Heures
  5.     iPos = InStr(1, strTime, ":", vbTextCompare)
  6.     dblTemps = CLng(Mid(strTime, 1, iPos - 1)) * 600
  7.     strTime = Mid(strTime, iPos + 1, Len(strTime) - iPos)
  8.    
  9.     ' Minutes
  10.     iPos = InStr(1, strTime, ".", vbTextCompare)
  11.     dblTemps = dblTemps + CLng(Mid(strTime, 1, iPos - 1)) * 10
  12.     strTime = Mid(strTime, iPos + 1, Len(strTime) - iPos)
  13.    
  14.     ' Secondes
  15.     dblTemps = dblTemps + CLng(strTime) / 10
  16.    
  17.     Calc_Dixiemes = dblTemps
  18. End Function


Essaie ça. Attention au séparateur décimal. Le pb. aurait été plus simple avec la virgule.  :)  


---------------
J'ai un message.."Cliquez OK pour continuer."...Qu'est ce que je fais ?
n°777498
lemonsoda
Posté le 25-06-2004 à 10:23:51  profilanswer
 

Merci,  
 
et ça donnerait quoi avec une virgule?
désolé d'être aussi ignare, mais je le plante où ce code???
 
je dois créer un nouveau module?
 
merci de ta patience. :-)

n°777547
JihemAir
Je sais pas
Posté le 25-06-2004 à 10:41:57  profilanswer
 

La virgule, ça aurait permis de récupérer 38.87 directement, sans décomposer au niveau du point. Mais c'est pas grave.
 
Le code, tu le copies tel quel à la fin de ton module en cours.
Et dans ton module en cours, là où tu récupères la valeur du champ, tu écris qq chose comme
 

Code :
  1. maValeur = Calc_Dixiemes(valeur_du_champ)

Voili voila..


---------------
J'ai un message.."Cliquez OK pour continuer."...Qu'est ce que je fais ?

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  convertir hh:mm en secondes

 

Sujets relatifs
Convertir des données en VBA vers ExcelConvertir QString en char
Comment convertir des bytes en Hexadécimal???[Java] Problème pour convertir un string en entier [resolu]
[PHP]Retarder de quelques secondes une redirectionconvertir du numérique en alphabetique [résolu]
convertir un double ou un float en string ou en charConvertir des milisecondes en heures, minutes, secondes, ms
Convertir des millisecondes en heures-minutes-secondes[VBSCRIPT] convertir un nb de secondes au format mm:ss
Plus de sujets relatifs à : convertir hh:mm en secondes


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR