Functia trateaza si CNP-urile persoanelor straine rezidente (al caror CNP incepe cu 7 sau 8 in functie de sex) sau al persoanelor straine ce nu sunt rezidente (avand 9 prima cifra din CNP) cu conditia ca persoana respectiva sa fie nascuta dupa 1920 - in caz contrar va afisa eronat secolul.
Inainte de a folosi formula, va recomand sa verificati corectitudinea CNP-urilor din tabela voastra folosind functia de validare CNP-uri.
Function Data_Nasterii(CNP As String) As Date
Dim An As Integer, Luna As Integer, Zi As IntegerSelect Case Left(CNP, 1)
Case 1, 2
An = CInt("19" & Mid(CNP, 2, 2))
Case 5, 6
An = CInt("20" & Mid(CNP, 2, 2))
Case 7, 8, 9
If CInt(Mid(CNP, 2, 2)) < 20 Then
An = CInt("20" & Mid(CNP, 2, 2))
Else
An = CInt("19" & Mid(CNP, 2, 2))
End If
End SelectLuna = CInt(Mid(CNP, 4, 2))
Zi = CInt(Mid(CNP, 6, 2))
Data_Nasterii = DateSerial(An, Luna, Zi)
End Function
Niciun comentariu:
Trimiteți un comentariu