Private Sub Worksheet_Change(ByVal Target As Range)
Dim x, y, z, sepdec, sp
Application.EnableEvents = False
Select Case Target.Address(0, 0)
Case "F4", "G4"
If IsNumeric(Target.Value) And Target.Value > 0 Then
sepdec = Mid(1.1, 2, 1): x = Target.Value & sepdec
sp = Split(x, sepdec)
y = Val("0" & sp(0))
z = Val("0" & Left(sp(1) & "0", 2))
If y >= 0 And y <= 23 And z >= 0 And z <= 59 Then
Target = CDbl(60 * y + z) / 24 / 60
Else
Target = CVErr(2015): Beep
End If
End If
End Select
Application.EnableEvents = True
End Sub