Forum Liberty Basic France

Le 17/04/2011 à 11h24

Libertynaute Expert

Groupe: Membre

Inscrit le: 19/02/2011
Messages: 767
Ecart entre 2 dates exprimée en Année(s), Mois, Jour(s)

Code TEXT :
'From the help file:
'print date$("days")       ' 36127         days since Jan 1, 1901
'print date$(36980)        ' 04/01/2002    mm/dd/yyyy string returned
'print date$("4/1/2002")   ' 36980         days since Jan 1, 1901 for given date
 
date1=date$("days") 'now
'random displacement from now
do
    date2 = date$(str$(int(rnd(1)*12+1))+"/"+str$(int(rnd(1)*31+1))+"/"+str$(int(rnd(1)*200+1901)))
loop until date2 > 0
 
print "date1:"; date$(date1);space$(4)+"(aujourd'hui)"   'format US
print "date2:"; date$(date2);td2$
 
print "La différence est de :  ";DiffDate$(date1,date2)
 
'---------------- FUNCTIONS ---------------
 
function DiffDate$(date1,date2)  ' resultat en Années, Mois, Jours
    'if date1 = 0 or date2 = 0 then exit function
    if date1 > date2 then
        dtemp = date1       'for the continuation, date1 MUST be < date2
        date1 = date2
        date2 = dtemp
    end if
    dyy = Year(date2) - Year(date1)
    dmm = Month(date2) - Month(date1)
    if dmm  < 0 then dyy = dyy - 1 : dmm = dmm + 12
    ddd = Day(date2) - Day(date1)
    if ddd < 0 then
        dmm = dmm - 1
        ddd = ddd + GetDaysOfMonth(Month(date1), Year(date1))
        if dmm < 0 then dyy = dyy - 1 : dmm = dmm + 12
    end if
    if dyy then Y$ = str$(dyy)+" An(s)"
    if dmm then M$ = str$(dmm)+" Mois"
    DiffDate$ = Y$;"   ";M$;"   ";str$(ddd)+" Jour(s)"
end function
 
FUNCTION Day(days)
    d$ = date$(days)
    Day = val(mid$(d$,4,2))
END FUNCTION
 
FUNCTION Month(days)
    d$ = date$(days)
    Month = val(left$(d$,2))
END FUNCTION
 
FUNCTION Year(days)
    d$ = date$(days)
    Year = val(right$(d$,4))
END FUNCTION
 
function GetDaysOfMonth(Month,Year)  'nbre de jours pour ce Mois     'Stefan Pendl
    for GetDaysOfMonth = 31 to 28 step -1
        if date$(Month; "/"; GetDaysOfMonth; "/"; Year) > 0 then exit for
    next
end function




Edité par cassiope01 Le 17/04/2011 à 11h27
____________________
Devise Shadocks : "Mieux vaut mobiliser son intelligence pour des conneries, que mobiliser sa connerie pour des choses intelligentes"
Coluche disait : "C'est parce que la vitesse de la lumière est plus rapide que celle du son que certains peuvent paraîtrent brillants jusqu'à ce qu'ils ouvrent la bouche."

Web    

 |  |

1 Utilisateur en ligne : 0 Administrateur, 0 Modérateur, 0 Membre et 1 Visiteur
Utilisateur en ligne : Aucun membre connecté
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie