io sono riuscito a realizzare questa routine... a prima vista sembra funzionare... testala un po'

codice:
Dim Anni As Integer
Dim Giorni As Integer
Dim DataIniziale As Date
Dim DataFinale As Date
Dim DataTemp As Date

DataIniziale = "01/01/1940"
DataFinale = Date  ' calcola l'età ad oggi

DataTemp = DataIniziale
Anni = Year(DataFinale) - Year(DataIniziale)
Mesi = Month(DataFinale) - Month(DataIniziale)
If Mesi < 0 Then
    Anni = Anni - 1
    Mesi = 12 + Mesi
End If

DataTemp = DateAdd("m", Mesi, DataIniziale)
DataTemp = DateAdd("yyyy", DateDiff("yyyy", DataIniziale, DataFinale), DataIniziale)
Giorni = DateDiff("d", Day(DataTemp) & "/" & Month(DataFinale) & "/" & Year(DataFinale), DataFinale)
If Giorni < 0 Then
    Giorni = DateDiff("y", DataFinale, DateAdd("m", 1, DataFinale)) + Giorni
    Mesi = Mesi - 1
    If Mesi < 0 Then
        Anni = Anni - 1
        Mesi = 12 + Mesi
    End If
End If

MsgBox "Hai " & Anni & " Anni, " & Mesi & " Mesi e " & Giorni & " Giorni"
Boolean