Convertire i giorni in formato anni:mesi:giorni

Da Gambas-it.org - Wikipedia.

Avendo un valore Intero, che rappresenta una quantità di giorni, per convertire questo numero complessivo di giorni in formato anni:mesi:giorni, si potrà adottare queste formule:

anni = totale_giorni \ 365
mesi = (totale_giorni Mod 365) \ 30
giorni = (totale_giorni Mod 365) Mod 30


Esempio pratico:

Public Sub Main()
 
 Dim d1, d2 As Date
 Dim i As Integer
 
  d1 = Date(2010, 01, 01)
  d2 = Now
   
  i = DateDiff(d1, d2, gb.day)
  Print "Dias:", i
   
  Print i \ 365; ":"; (i Mod 365) \ 30; ":"; (i Mod 365) Mod 30
  
End