Funkcja do liczenia stażu w latach – PelneLata

Generalnie robi to samo co excelowa DATA.RÓŻNICA ale jest łatwiejsza w użyciu, bo nie trzeba podawać interwału, no i podpowiada nazwy argumentów

Function PelneLata(DataPocz As Date, DataKon As Date) As Long
   '----------------------------------------------
    ' Mam nadzieję, że robi to samo co
    ' DATA.RÓŻNICA ale za to podpowiada argumenty :)
    '----------------------------------------------
    Dim RokPocz As Long, MiesPocz As Long, DzienPocz As Long
    Dim RokKon As Long, MiesKon As Long, DzienKon As Long
 
    If DataKon <= DataPocz Then
        PelneLata = 0
        Exit Function
    End If
 
    RokPocz = Year(DataPocz)
    RokKon = Year(DataKon)
    MiesPocz = Month(DataPocz)
    MiesKon = Month(DataKon)
    DzienPocz = Day(DataPocz)
    DzienKon = Day(DataKon)
 
    PelneLata = RokKon - RokPocz
    If MiesPocz > MiesKon Then
        PelneLata = PelneLata - 1
        Exit Function
    End If
    If MiesKon = MiesPocz Then
        If DzienPocz > DzienKon Then PelneLata = PelneLata - 1
    End If
End Function