Tema: Restar horas
Ver Mensaje Individual
  #15 (permalink)  
Antiguo 09/04/2010, 12:33
PoluxMTZ
 
Fecha de Ingreso: septiembre-2008
Mensajes: 5
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Restar horas

hola pues la verdad mi código no resta horas si que fechas ya estuve buscando en inter pero nada asi que aqui se los dejo recuerden "resta fechas" .


Public Overloads Function ObtenerVigencia(ByVal FechaServidor As String, ByVal FechaOtorgamiento As Date) As String
Dim Vigencia As String = ""
Dim ldAux As Date
Dim lnAnio As Integer
Dim lnMes As Integer
Dim lnDia As Integer
Dim DiaFO As Integer
Dim MesFO As Integer
Dim AñoFO As Integer
Dim FechaActual As Date
Dim FechaOtorgamientoMas10 As Date
If FechaOtorgamiento < "12-01-2005" Then
Vigencia = "PERMANENTE"
Else
FechaOtorgamientoMas10 = DateAdd(DateInterval.Year, 10, FechaOtorgamiento)
DiaFO = Microsoft.VisualBasic.DateAndTime.Day(FechaServido r)
MesFO = Month(FechaServidor)
AñoFO = Year(FechaServidor)
FechaActual = CDate(DiaFO.ToString + "/" + MesFO.ToString + "/" + AñoFO.ToString)

lnAnio = Year(FechaOtorgamientoMas10) - Year(FechaActual)
ldAux = DateAdd(DateInterval.Month, (12 * lnAnio), FechaActual)
'--- No cumplio el año aun
If ldAux > FechaOtorgamientoMas10 Then
lnAnio = lnAnio - 1
End If
lnMes = Month(FechaOtorgamientoMas10) - Month(FechaActual)
If lnMes < 0 Then
lnMes = lnMes + 12
End If
lnDia = Day(FechaOtorgamientoMas10) - Day(FechaActual)
If lnDia < 0 Then
lnDia = lnDia + DiasDelMes(FechaActual)
End If
Dim Núm_días As Integer = Day(DateSerial(Year(FechaOtorgamientoMas10), lnMes - 1, 0))

'Si el dia es mayor, no cumplio el mes
If (Day(FechaOtorgamientoMas10) < Day(FechaActual)) Then
If lnMes = 0 Then
lnMes = 11
Else
lnMes = lnMes - 1
End If
End If
If lnDia < 0 Then
lnDia = lnDia + Núm_días
End If
If lnAnio >= 10 And lnMes >= 0 And lnDia > 0 Then
Vigencia = "COMPROBAR"
Else
Vigencia = Vigencia & " Años: " & lnAnio & " Meses: " & lnMes & " Dias: " & lnDia ' & "Num_dias" & Núm_días
End If
End If
Return Vigencia
End Function