Codi en VBA per Access que verifica si la diferència entre dues dates equival a exactament un any, tenint en compte els anys de traspàs
Function EsUnAnySencer(data1 As Date, data2 As Date) As Boolean
Dim diesDiferencia As Long
Dim dataInicial As Date
Dim dataFinal As Date
' Ordenem les dates per assegurar que dataInicial és la més petita
If data1 < data2 Then
dataInicial = data1
dataFinal = data2
Else
dataInicial = data2
dataFinal = data1
End If
' Calculem la diferència en dies
diesDiferencia = DateDiff("d", dataInicial, dataFinal)
' Comprovem si coincideix amb 365 o 366 dies
If diesDiferencia = 365 Or diesDiferencia = 366 Then
' Comprovem si la diferència d'anys també és exactament 1
If DateAdd("yyyy", 1, dataInicial) = dataFinal Then
EsUnAnySencer = True
Exit Function
End If
End If
EsUnAnySencer = False
End Function
Comentaris
Publica un comentari a l'entrada