Har ikke prøvet en VBA metode, men det kan gøres med en formel. Sæt nedenstående formel ind i B2 og træk ned så langt du har behov for: =DATO.FORSKEL(A2;IDAG();"y") & " År, " & DATO.FORSKEL(A2;IDAG();"ym")& " Måneder og " & (DAG(IDAG())-DAG(A2)+HVIS(DAG(IDAG()) < DAG(A2);30;0)) & "
Jeg havde helt glemt denne, så jeg ved ikke om du stadig skal bruge en løsning, men prøv med
Function Alder(Dato As Date) As Integer If Month(Dato) > Month(Date) Or Month(Dato) = Month(Date) And Day(Dato) > Day(Date) Then Alder = DateDiff("yyyy", Dato, Now) - 1 Else Alder = DateDiff("yyyy", Dato, Now) End If End Function
Forudsætter at fødselesdagene er indtastet i Excels datoformat, altså d-m-åå.
jeg har en fødselsdagskalender i excel A navn B fødseldato C alder D hvis fødselsdag i aktuelle måned
B2 er fx 19-07-1961 C2 er =ÅR(IDAG())-ÅR(B2)+HVIS(MÅNED(B2)<MÅNED(IDAG());0;-1) D2 er =HVIS(MÅNED(B2)=MÅNED(IDAG());C2+1&" år den "&DAG(B2)&".";"") B2 viser 58, og D2 viser 59 år den 19.
Public Function Alder(datFoed As Date) As Integer 'Beregn alder ud fra en fødselsdag 'Funktionen kan kaldes med fødselsdagen som argument
Alder = Right(DatePart("yyyy", Date - datFoed), 2) End Function
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.