Access - Procedimiento con horas

 
Vista:
sin imagen de perfil
Val: 47
Ha aumentado su posición en 3 puestos en Access (en relación al último mes)
Gráfica de Access

Procedimiento con horas

Publicado por JOSE (34 intervenciones) el 18/11/2016 06:06:48
Saludos :

necesito un codigo vba en acess 2013 para trabajar con horas y minutos .

Me explico:

tengo un rango de horas y necesito calcularlas para determinar un turno de trabajo.

Ejemplo

tengo un turno de trabajo desde las 4:00 am hasta las 12:00 md y necesito calcular que cualquier hora dentro de ese rango sea el turno 4-12

tengo un turno de trabajo desde las 12:00md hasta las 8:00 pm y necesito calcular que cualquier hora dentro de ese rango sea el turno 12-8

tengo un turno de trabajo desde las 8:00 pm hasta las 4:00 am y necesito calcular que cualquier hora dentro de ese rango sea el turno 8-4

******tengo un campo llamado TURNO y tengo un campo de HORA . Quiero que cualquier hora dentro de un rango en el campo hora , después de actualizar , inserte en el campo TURNO el turno correspondiente. *******

por ejemplo -- si son las 10 de la noche , necesito en el campo TURNO : 8-4
si son las 6 de la mañana , necesito en el campo TURNO : 4-12
si son las 3 de la tarde , necesito en el campo TURNO : 12-8


Agradezco cualquier ayuda !!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 756
Plata
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Procedimiento con horas

Publicado por Jesús Manuel (375 intervenciones) el 18/11/2016 09:26:37
Cuando dices que tienes un rango de horas, te refieres a que tienes un cuadro combinado con las horas, de 0 a 23?? Si es así, con esto sería suficiente:

1
2
3
4
5
6
7
8
9
10
11
If Not IsNull(Me.lstHora) Then
    If Me.lstHora >= 4 And Me.lstHora < 12 Then
        Me.txtTurno = "4-12"
    ElseIf Me.lstHora >= 12 And Me.lstHora < 20 Then
        Me.txtTurno = "12-8"
    Else
        Me.txtTurno = "8-4"
    End If
Else
    Me.txtTurno = Null
End If

Tendrías un cuadro combinado (lstHora) con las horas de 0 a 23 y un cuadro de texto (txtTurno) en el que indicar el turno correspondiente
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 47
Ha aumentado su posición en 3 puestos en Access (en relación al último mes)
Gráfica de Access

Procedimiento con horas

Publicado por JOSE (34 intervenciones) el 28/11/2016 03:29:59
Gracias Jesus Manuel !!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 756
Plata
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Procedimiento con horas

Publicado por Jesús Manuel (375 intervenciones) el 18/11/2016 10:33:20
Y si lo que tienes es un campo tipo hora:


1
2
3
4
5
6
7
8
9
10
11
If Not IsNull(Me.CampoHora) Then
    If Format(Me.CampoHora, "HH:mm:ss") >= Format(#4:00:00 AM#, "HH:mm:ss") And Format(Me.CampoHora, "HH:mm:ss") < Format(#12:00:00 PM#, "HH:mm:ss") Then
        Me.txtTurno = "4-12"
    ElseIf Format(Me.CampoHora, "HH:mm:ss") >= Format(#12:00:00 PM#, "HH:mm:ss") And Format(Me.CampoHora, "HH:mm:ss") < Format(#8:00:00 PM#, "HH:mm:ss") Then
        Me.txtTurno = "12-8"
    Else
        Me.txtTurno = "8-4"
    End If
Else
    Me.txtTurno = Null
End If
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar