Foros del Web » Programación para mayores de 30 ;) » .NET »

Obtener horas vb.net

Estas en el tema de Obtener horas vb.net en el foro de .NET en Foros del Web. hola tengo un problema con este codigo, necesito sacar la diferencia de horas de dos fechas, sale todo bien pero cuando pongo por ejemplo en ...
  #1 (permalink)  
Antiguo 27/01/2011, 14:13
(Desactivado)
 
Fecha de Ingreso: julio-2009
Mensajes: 33
Antigüedad: 14 años, 9 meses
Puntos: 0
Obtener horas vb.net

hola tengo un problema con este codigo, necesito sacar la diferencia de horas de dos fechas, sale todo bien pero cuando pongo por ejemplo en la fecha n1 19:00 horas y en la fecha numero 2 20:30 horas, me muestra que hay 2 horas y 30 minutos de diferencia y deberia ser 1 hora y 30 minutos. si alguien me puede ayudar estaria muy agradecido..

este es el codigo

Dim nomfechainicio As Date
Dim nomfechatermino As Date
Dim nomhorainicio As Date
Dim nomhoratermino As Date


Dim dias As Long
Dim horas As Long
Dim minutos As Long
Dim segundos As Long


nomfechatermino = DateTimePicker2.Value.Date
nomfechainicio = DateTimePicker1.Value.Date
nomhorainicio = MaskedTextBox1.Text
nomhoratermino = MaskedTextBox2.Text


nomfechainicio = nomfechainicio & " " & nomhorainicio
nomfechatermino = nomfechatermino & " " & nomhoratermino

segundos = DateDiff("s", nomfechainicio, nomfechatermino)
MessageBox.Show(segundos)

If segundos >= 86400 Then
dias = Val(segundos / 86400)
segundos = segundos Mod 86400
End If

If segundos >= 3600 Then
horas = Val(segundos / 3600)
segundos = segundos Mod 3600
MessageBox.Show(horas)
End If

If segundos >= 60 Then
minutos = Val(segundos / 60)
segundos = segundos Mod 60
MessageBox.Show(segundos)
End If

TextBox5.Text = CStr((dias * 24) + horas) & ":" & CStr(Format(minutos, "00")) & ":" & CStr(segundos)
  #2 (permalink)  
Antiguo 30/01/2011, 11:51
(Desactivado)
 
Fecha de Ingreso: julio-2009
Mensajes: 33
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Obtener horas vb.net

me respondo, es por la aproximacion se resuelve poniendo esto:


horas = int(Val(segundos / 3600))

asi sacamos solo el entero sin aproximar.

cuack!

Etiquetas: horas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:51.