sugerencias para sacar la diferencia entre 2 horas

22/07/2005 - 10:56 por Sonia | Informe spam
hola

kiero sacar los minutos y segundos q hay entre 2 horas hora final-hora
inicio

de momento solo estoy sacando los segundos pero no me sale

hago esto:

' *************** primera forma de hacerlo *****************

Dim hora2, hora1 As Date

Dim diferencia As Integer



'hora inicio-la almacene en un textbox pq no podria ponerlo como variable

'hora inicio

hora.Text = Microsoft.VisualBasic.Hour(System.DateTime.Now)

hora.Text = Format(System.DateTime.Now, "HH:mm")

'hora final

horaf.Text = Microsoft.VisualBasic.Hour(System.DateTime.Now)

horaf.Text = Format(System.DateTime.Now, "HH:mm")



hora2 = horaf.Text

hora1 = hora.Text

diferencia = hora2.Subtract(hora1)



y despues en el insert inserto la diferencia



' *************** segunda forma de hacerlo *****************

Dim difer As TimeSpan

Dim hora2, hora1 As String

difer = (DateDiff(DateInterval.Day, DateTime.Parse(hora2),
DateTime.Parse(hora1)))



bueno ninguno de los ejemplos me da.

Alguna sugerencia??



gracias

Preguntas similare

Leer las respuestas

#1 Eduardo
22/07/2005 - 11:20 | Informe spam
Sonia, el sig. codigo es identico al tuyo y me funciono bien

Dim Hora1, Hora2 As Date
Hora1 = Now
Hora2 = Now
Hora2 = Hora2.AddHours(Rnd() * 3)
Me.TextBox1.Text = Hora1.ToString("hh:mm")
Me.TextBox2.Text = Hora2.ToString("hh:mm")
Me.TextBox3.Text = Hora2.Subtract(Hora1).ToString

No creo que sea eso, pero creo que tal vez no has notado que tu hora1 y
Hora2 son iguales y no hay ninguna diferencia, pueda ser que los pequeños
segundos que obtengas solo sean unos cuantos ticks que se ganaron al
inicializar las variablesSUERTE!!!
Respuesta Responder a este mensaje
#2 Jorge Serrano [MVP VB]
22/07/2005 - 15:12 | Informe spam
¿Has contemplado la posibilidad de usar DateDiff?

Un saludo.

Jorge Serrano Pérez
Microsoft MVP VB.NET
PortalVB.com
http://www.portalvb.com/
Weblog de Jorge Serrano
http://weblogs.golemproject.com/jorge/


"Sonia" wrote:


hola

kiero sacar los minutos y segundos q hay entre 2 horas hora final-hora
inicio

de momento solo estoy sacando los segundos pero no me sale

hago esto:

' *************** primera forma de hacerlo *****************

Dim hora2, hora1 As Date

Dim diferencia As Integer



'hora inicio-la almacene en un textbox pq no podria ponerlo como variable

'hora inicio

hora.Text = Microsoft.VisualBasic.Hour(System.DateTime.Now)

hora.Text = Format(System.DateTime.Now, "HH:mm")

'hora final

horaf.Text = Microsoft.VisualBasic.Hour(System.DateTime.Now)

horaf.Text = Format(System.DateTime.Now, "HH:mm")



hora2 = horaf.Text

hora1 = hora.Text

diferencia = hora2.Subtract(hora1)



y despues en el insert inserto la diferencia



' *************** segunda forma de hacerlo *****************

Dim difer As TimeSpan

Dim hora2, hora1 As String

difer = (DateDiff(DateInterval.Day, DateTime.Parse(hora2),
DateTime.Parse(hora1)))



bueno ninguno de los ejemplos me da.

Alguna sugerencia??



gracias




Respuesta Responder a este mensaje
#3 Ivanhoe
22/07/2005 - 22:21 | Informe spam
' *************** segunda forma de hacerlo *****************

Dim difer As TimeSpan

Dim hora2, hora1 As String

difer = (DateDiff(DateInterval.Day, DateTime.Parse(hora2),
DateTime.Parse(hora1)))



bueno ninguno de los ejemplos me da.

Alguna sugerencia??



Te lo corrigo :

Dim HoraInicio As DateTime = DateTime.Now ' Hora Actual
Dim HoraFinal As DateTime = DateTime.Parse("8:30 PM") ' Las 20:30
Horas...
Dim Difer as TimeSpan = DateTime.op_Subtraction(HoraFinal, HoraInicio)

Console.WriteLine("Dias {0}", Difer.Days)
Console.WriteLine("Horas {0}", Difer.Hours)
Console.WriteLine("Minutos {0}", Difer.Minutes)
Console.WriteLine("Segundos {0}", Difer.Seconds)
Console.WriteLine("TotalMinutos {0}", Difer.TotalMinutes)
Console.WriteLine("TotalSecundos {0}", Difer.TotalSeconds)

Por ejemplo : Si fueran las 2:14:53 de la tarde y cuanto falta para las 8:30
???, el codigo te diria que faltan 0 dias,
6 horas, 15 minutos con 6 segundos para las 8:30,que son 375.1044
minutos o 22506.255.. segundos...
Respuesta Responder a este mensaje
#4 Sonia
25/07/2005 - 09:56 | Informe spam
gracias a todos pero me falta una cosilla

ya he consegiodo q se guarde en la bd la diferencia entre las 2 fechas

se guarda asi:
ID
OPERADORA
FECHA
INICIO
FIN
TIEMPO
ID_COL
TELEFONO

182
OLGA
25/07/2005
9:16
9:34
0:18
011006
945396077

183
OLGA
25/07/2005
9:36
9:40
0:06
011006
945396077

184
OLGA
25/07/2005
9:42
9:44
0:02
011002
964002569

185
SILVIA
25/07/2005
9:16
9:34
0:18
011006
945396077

186
OLGA
26/07/2005
9:36
9:41
0:07
011006
945396077



pero ahora en la consulta done kiero juntar esas filas x fecha,operadora y
volegio, el tiempo(diferencia) me vuslve a salir como un numero normal y yo
kiero q me salga tb en horas y min

es decir q para la operadora OLGA, a fecha de hoy y el colegio 011006, me
tendria q salir 0:24 y me sale 24

esta es la consutla y esto como se muestra el resultado. q puedo hacer para
cambiarlo?
gracias!

SELECT colegios.OPERADORA, colegios.FECHA, Min(colegios.INICIO) AS DESDE,
Max(colegios.FIN) AS HASTA,
DateDiff("n",DESDE,HASTA) AS TIEMPO, colegios.ID_COL, colegios.TELEFONO
FROM colegios
GROUP BY colegios.OPERADORA, colegios.FECHA, colegios.ID_COL,
colegios.TELEFONO;


OPERADORA
FECHA
DESDE
HASTA
TIEMPO
ID_COL
TELEFONO

OLGA
25/07/2005
9:42:00
9:44:00
2
011002
964002569

OLGA
25/07/2005
9:16:00
9:40:00
24
011006
945396077

OLGA
26/07/2005
9:36:00
9:41:00
5
011006
945396077

SILVIA
25/07/2005
9:16:00
9:34:00
18
011006
945396077







"Sonia" escribió en el mensaje
news:e#


hola

kiero sacar los minutos y segundos q hay entre 2 horas hora final-hora
inicio

de momento solo estoy sacando los segundos pero no me sale

hago esto:

' *************** primera forma de hacerlo *****************

Dim hora2, hora1 As Date

Dim diferencia As Integer



'hora inicio-la almacene en un textbox pq no podria ponerlo como variable

'hora inicio

hora.Text = Microsoft.VisualBasic.Hour(System.DateTime.Now)

hora.Text = Format(System.DateTime.Now, "HH:mm")

'hora final

horaf.Text = Microsoft.VisualBasic.Hour(System.DateTime.Now)

horaf.Text = Format(System.DateTime.Now, "HH:mm")



hora2 = horaf.Text

hora1 = hora.Text

diferencia = hora2.Subtract(hora1)



y despues en el insert inserto la diferencia



' *************** segunda forma de hacerlo *****************

Dim difer As TimeSpan

Dim hora2, hora1 As String

difer = (DateDiff(DateInterval.Day, DateTime.Parse(hora2),
DateTime.Parse(hora1)))



bueno ninguno de los ejemplos me da.

Alguna sugerencia??



gracias




Respuesta Responder a este mensaje
#5 Sonia
25/07/2005 - 10:17 | Informe spam
ok.
ya he averiguado q me sale solo un num pq me sale en minutos ya q npongo 'n'
en la funcion datediff

DateDiff("n",Min([INICIO]),Max([FIN]))

pero no habria ninguna manera en q me saliera en horas:minutos??

gracias!


"Sonia" escribió en el mensaje
news:


gracias a todos pero me falta una cosilla

ya he consegiodo q se guarde en la bd la diferencia entre las 2 fechas

se guarda asi:
ID
OPERADORA
FECHA
INICIO
FIN
TIEMPO
ID_COL
TELEFONO

182
OLGA
25/07/2005
9:16
9:34
0:18
011006
945396077

183
OLGA
25/07/2005
9:36
9:40
0:06
011006
945396077

184
OLGA
25/07/2005
9:42
9:44
0:02
011002
964002569

185
SILVIA
25/07/2005
9:16
9:34
0:18
011006
945396077

186
OLGA
26/07/2005
9:36
9:41
0:07
011006
945396077



pero ahora en la consulta done kiero juntar esas filas x fecha,operadora y
volegio, el tiempo(diferencia) me vuslve a salir como un numero normal y


yo
kiero q me salga tb en horas y min

es decir q para la operadora OLGA, a fecha de hoy y el colegio 011006, me
tendria q salir 0:24 y me sale 24

esta es la consutla y esto como se muestra el resultado. q puedo hacer


para
cambiarlo?
gracias!

SELECT colegios.OPERADORA, colegios.FECHA, Min(colegios.INICIO) AS DESDE,
Max(colegios.FIN) AS HASTA,
DateDiff("n",DESDE,HASTA) AS TIEMPO, colegios.ID_COL, colegios.TELEFONO
FROM colegios
GROUP BY colegios.OPERADORA, colegios.FECHA, colegios.ID_COL,
colegios.TELEFONO;


OPERADORA
FECHA
DESDE
HASTA
TIEMPO
ID_COL
TELEFONO

OLGA
25/07/2005
9:42:00
9:44:00
2
011002
964002569

OLGA
25/07/2005
9:16:00
9:40:00
24
011006
945396077

OLGA
26/07/2005
9:36:00
9:41:00
5
011006
945396077

SILVIA
25/07/2005
9:16:00
9:34:00
18
011006
945396077







"Sonia" escribió en el mensaje
news:e#
>
>
> hola
>
> kiero sacar los minutos y segundos q hay entre 2 horas hora final-hora
> inicio
>
> de momento solo estoy sacando los segundos pero no me sale
>
> hago esto:
>
> ' *************** primera forma de hacerlo *****************
>
> Dim hora2, hora1 As Date
>
> Dim diferencia As Integer
>
>
>
> 'hora inicio-la almacene en un textbox pq no podria ponerlo como


variable
>
> 'hora inicio
>
> hora.Text = Microsoft.VisualBasic.Hour(System.DateTime.Now)
>
> hora.Text = Format(System.DateTime.Now, "HH:mm")
>
> 'hora final
>
> horaf.Text = Microsoft.VisualBasic.Hour(System.DateTime.Now)
>
> horaf.Text = Format(System.DateTime.Now, "HH:mm")
>
>
>
> hora2 = horaf.Text
>
> hora1 = hora.Text
>
> diferencia = hora2.Subtract(hora1)
>
>
>
> y despues en el insert inserto la diferencia
>
>
>
> ' *************** segunda forma de hacerlo *****************
>
> Dim difer As TimeSpan
>
> Dim hora2, hora1 As String
>
> difer = (DateDiff(DateInterval.Day, DateTime.Parse(hora2),
> DateTime.Parse(hora1)))
>
>
>
> bueno ninguno de los ejemplos me da.
>
> Alguna sugerencia??
>
>
>
> gracias
>
>
>
>




Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida