Gracias Abraham Valencia por tu ayuda,
Estoy trabajando con el editor de vba de access. Tengo la variable FQTY_PHH que contiene las horas totales de trabajo que necesito para producir una referencia. y a este le quiero restar las horas de trabajo que tengo la maquina disponible que están el la varible hM. hM es un acumulado que me va realizando un bucle For para leer por dia y por turno las horas que tengo disponibles y las acumula hasta que hM sea igual a FQTY_PHH. Esto indicara la hora que hemos finalizado la producción contemplando si hay turnos parados.
Este es el código que tengo realizado para extraer las horas de maquina (dentro de este código quiero introducir un buque que le reste FQTY_PHH - hM hasta que el valor sea 0
Dim q_hMaq As String, d As String, T As String
Dim i As Byte, hM As Byte, hT As Byte, hN As Byte
Dim FQTY_PHH As Double
'Vaciamos las variables
i = 0
Maq = rs("1")
FQTY_PHH = Round(rs("FQTY/PHH").Value, 2)
'Extraemos las horas disponibles de maq por dia y por cada turno
For i = 1 To 3
d = Format(iniProd, "dd/mm/yyyy")
T = ""
'Ajuste de turno
If (horaProd < "06:00:00") Then
d = DateAdd("d", -1, d)
End If
'Con "i" recorremos los turnos, para pasarle como criterio a la consulta
Select Case i
Case Is = 1
T = "M"
Case Is = 2
T = "T"
Case Is = 3
T = "N"
End Select
'Consulta para extraer las horas de trabajo por parámetros
If Not IsNull(DLookup(" horas ", "[Plan CalendarioCalculado_Base]", "Maq like '" & Maq & "' and diaMesAny like '" & d & "' ")) Then
hM = DLookup(" horas ", "[Plan CalendarioCalculado_Base]", "Maq like '" & Maq & "' and diaMesAny like '" & d & "'and Turno like '" & T & "' ")
End If
'Imprimimos por dia los resultados (para hacer textear)
a = ""
a = T & " " & hM & " " & Maq & " " & "d= " & d & " " & iniProd & " " & (horaProd < "06:00:00") & " " & horaProd & " " & FQTY_PHH & vbNewLine & a
Next i
Debug.Print a