Fecha en access

Le agradecería me informe, alguna forma de hacer cálculos con las fechas en access. Por ejemplo, tengo un formulario donde un casillero es fecha actual o una cierta fecha y necesito que cuando se ingrese una fecha en esta, en otro casillero aparezca automáticamente la fecha de 30 días o por días después. O sea incrementarle por días a la fecha ingresada.
Desde ya muchas gracias
Manuel

1 Respuesta

Respuesta
1
Internamente las fechas se guardan como números enteros. Entonces si restas dos fechas te dará como resultado la cantidad de días que hay entre una y otra. Si a una fecha le sumas 30 te dará la fecha correspondiente a 30 días después. Pero también puedes usar las funciones de fecha que te permiten manipular el mes, el día de la semana, etc. Si lo aceptas te enviaré el código correspondiente a un cálculo de vencimientos. Espero tu respuesta. También puedes describirme el cáclulo que necesitas. Suerte- Marciana
Si, te agradeceré si me envías el código.
Muchas gracias
Public Function Vence(Proveedor As Long, FechaFactura As Date) As Date
'Calcula FEcha de vencimiento de acuerdo con proveedor
'Se usa en Formulario FacturaCompra2
Dim dia As Integer
Dim mes As Integer
Dim Anio As Integer
dia = Weekday(FechaFactura)
'Si proveedor no está definido
Vence = FechaFactura
' EGSA
If Proveedor = 1 Then
If dia = 6 Then
Vence = FechaFactura + 35
Exit Function
End If
If dia = 7 Then
Vence = FechaFactura + 6 + 35
Else
Vence = FechaFactura + 6 - dia + 35
End If
End If
'Wurth Rindem etman AGORA
If Proveedor = 3 Or Proveedor = 2 Or Proveedor = 4 Or Proveedor = 6 Then
Vence = FechaFactura + 30
End If
'DIBA
If Proveedor = 5 Then
dia = Day(FechaFactura)
mes = Month(FechaFactura) + 2
Anio = Year(FechaFactura)
If mes > 12 Then
mes = mes - 12
Anio = Anio + 1
End If
If dia <= 15 Then
Vence = DateValue("15/" & Str(mes) & "/" & Str(Anio) & "")
'Vence = FechaFactura + 15 - dia + 60
Exit Function
End If
If dia > 15 Then
mes = mes + 1
If mes = 13 Then
Vence = DateValue("31/" & Str(mes - 1) & "/" & Str(Anio))
Else
Vence = DateValue("1/" & Str(mes) & "/" & Str(Anio)) - 1
End If
End If
End If
End Function

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas