Source pour aider à arreter de fûmer, exemple de calcul entre 2 dates

Soyez le premier à donner votre avis sur cette source.

Vue 7 695 fois - Téléchargée 1 793 fois

Description

Petite source bien simple mais qui montre bien comment calculer la différence entre 2 dates et heures ou le temps restant ou écoulé depuis une date.

Ca peut parraître très simpliste mais si cette source peut aider 1 personne à arrêter de fumer alors elle n'aura pas été postée en vain.

C'est ma première source postée, les commentaires sont bienvenus.

Source / Exemple :


Public timer As Integer

Private Sub Timer1_Timer()      'Timer pour rafraichir les labels de temps
    Dim cible As Date
    Dim resultat As String
    
    Dim mms_an As Double
    Dim mms_jour As Double
    Dim mms_heure As Double
    Dim mms_minute As Double
    Dim mms_seconde As Double
    Dim diff_mms As Double
    
    Dim diff_annee As Double
    Dim diff_jours As Double
    Dim diff_heures As Double
    Dim diff_minutes As Double
    Dim diff_secondes As Double
    
    cible = "2005/05/19 04:33:00"  'Date de départ
    
    diff_mms = DateDiff("s", cible, Now) 'Différence en secondes
                                         'Entre la date de départ
                                         'Et celle du système
    
    
    mms_an = 31536000   'Nombre de secondes dans un an
    mms_jour = 86400    'Nombre de secondes dans un jour
    mms_heure = 3600    'Nombre de secondes dans une heure
    mms_minute = 60     'Nombre de secondes dans une minute
    mms_seconde = 1     'Une seconde
    
     
      
    diff_annee = diff_mms \ mms_an                     'Diviser le temps écoulé en années
    diff_mms = diff_mms - (diff_annee * mms_an)        'Enlever les années au temps écoulé
     
    diff_jours = diff_mms \ mms_jour                   'Diviser le temps écoulé en jours
    diff_mms = diff_mms - (diff_jours * mms_jour)      'Enlever les jours au temps écoulé
     
    diff_heures = diff_mms \ mms_heure                 'Diviser le temps écoulé en heures
    diff_mms = diff_mms - (diff_heures * mms_heure)    'Enlever les heures au temps écoulé
    
    diff_minutes = diff_mms \ mms_minute               'Diviser le temps écoulé en minutes
    diff_mms = diff_mms - (diff_minutes * mms_minute)  'Enlever les minutes au temps écoulé
    
    diff_secondes = diff_mms \ mms_seconde             'Diviser le temps écoulé en secondes
    
    Label1.Caption = diff_annee        'afficher les années écoulées
    
    Label11.Caption = diff_jours       'afficher les jours écoulées
    
    Label111.Caption = diff_heures     'afficher les heures écoulées
    
    Label1111.Caption = diff_minutes   'afficher les minutes écoulées
    
    Label11111.Caption = diff_secondes 'afficher les secondes écoulées
    
    
    
End Sub

Private Sub Timer2_Timer()   'Timer pour les images
    If timer = 0 Then        'Pour empêcher de faire image(0) -1
    timer = 1
    End If
    
   
    If timer = 21 Then       'repartir le timer
    timer = 1
    End If
    
    
    Image1(timer).Visible = True         'Afficher l'image
    
    Image1(timer - 1).Visible = False    'Effacer l'image précédente
   
    
    timer = timer + 1                    'incrémenter le timer
    
    
End Sub

Conclusion :


aucun bug connu... trop simple pour ça!

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

VestaX
Messages postés
376
Date d'inscription
mardi 2 décembre 2003
Statut
Membre
Dernière intervention
24 avril 2013

erfff dommage, car je ne m'y conné absolument pas en programmation. Moi je code que en MIRC :,( donc si il faut moddif des trucs, ce n'est meme pas la peine d'y penser. Tant pis merci quand même et bonne continuation :)
cs_Benouille
Messages postés
216
Date d'inscription
jeudi 24 octobre 2002
Statut
Membre
Dernière intervention
7 septembre 2007
1
rigolo :)
pas tres utile ni super bien fait mais rigolo

comme quoi l'idée marketing compte plus que le technique le mettant en oeuvre ;)
pointbin
Messages postés
71
Date d'inscription
lundi 5 janvier 2004
Statut
Membre
Dernière intervention
13 mai 2010

Ok, merci pour l'info et bonne programmation.
Salem.
Tonkadan
Messages postés
8
Date d'inscription
mardi 12 octobre 2004
Statut
Membre
Dernière intervention
15 février 2006

En fait pour la division sans virgules c'est assez simple.
intX / intY = Division avec virgules
intX \ intY = Division Entière (pas de virgules)
pointbin
Messages postés
71
Date d'inscription
lundi 5 janvier 2004
Statut
Membre
Dernière intervention
13 mai 2010

Merci Tonkadan, c'est evidamment ce que je chercher, compter le nombre d'heures et mn
mais comment ça se fait qu'il n'y a pas de virgules quand vous diviser le nombre de secondes
par n'importe quel mms**** dans votre source. car quand j'ai fait la même chose dans mon
projet, je trouve des virgules, donc j'ai utiliser la methode "int(nombre)" pour avoir la
partie entiere. ce que j'ai pas compris c'est le trucs qui est en votre source.
si vous pouvez me l'expliquer ?
Merci

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.