Segundos en horas, minutos y segundos en Visual Basic 6 (vb6)

Bienvenidos a VerTutoriales.com, en esta ocasión vamos a ver una función a la que se le pasan segundos y lo convierte en un formato de horas, minutos y segundos.

La operación veremos que es muy sencilla y utilizaremos la función mod() que nos devuelve el resto de un número, de esta manera podremos seguir desglosando tanto como queramos, en nuestro caso, en horas, minutos y segundos.

Veamos la función y pasamos más adelante a explicarla:

Function FormatoMinutos(segundos) As String

Dim aHoras As Integer

Dim aMinutos As Integer

Dim aSegundos As Integer

aHoras = segundos / 3600

aMinutos = (segundos Mod 3600) / 60

aSegundos = ((segundos Mod 3600) Mod 60)
FormatoMinutos = Right$(“0” & aHoras, 2) & “:” & Right$(“0” & aMinutos, 2) & “:” & Right$(“0” & aSegundos, 2)    End

Function

 

Como podéis ver, la función recibe un parámetro segundos, que es el total de segundos que queremos desglosar en horas y minutos, a continuación simplemente dividimos los segundos en 3600 (que son los segundos de una hora) de esta manera obtenemos las horas, más adelante tomamos el resto de 3600 y partimos denuevo en 60, para conseguir los minutos, y una tercera vez, para conseguir los segundos restantes.

Luego simplemente le damos formato, yo he optado por dar formato “00:00:00” aunque podéis poner el que queráis, es más podéis utilizar la función format() para designar un formato y que os lo devuelva en formato date/time.

Espero que os sirva!

Un saludo!

Te puede interesar:

4 comentarios

  • TEZUDA commented on 22 abril, 2013 Reply

    Nos nos sirvio de nada… deberian tomar en cuenta el programa Visual Studio 2010 C++

    • VideoTutoriales commented on 23 abril, 2013 Reply

      Siento que no os diera una solución, aunque con unos mínimos conocimientos de programación no resultaría difícil pasarlo a .net o cualquier otro lenguaje.

      Es solo un par de operaciones y una concatenación 🙂

  • AlexO commented on 25 mayo, 2016 Reply

    Cuando tengo una hora con variación en segundos calcula mal los minutos es decir 09:03:20 a.m. y 09:03:53 a.m. tiene una variación de 33 segundos, la función arroja 00:01:33, qué está mal??

    • Carlos Dk commented on 25 mayo, 2016 Reply

      ¿Qué valor le estás pasando? La función recibe segundos y devuelve el string montado en ese formato. Si te devuelve 1:33 es por que realmente hay 93 segundos, o así entiendo.
      Un saludo!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *