Calculer le delai et changer le fond d'un label

Résolu
temalemiel - 28 avril 2013 à 23:01
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 - 29 avril 2013 à 08:26
Private Sub Delai()
Dim pin As Integer

Dim firstDate, msg As String
Dim secondDate As Date
firstDate = InputBox("Enter a date")
secondDate = CDate(firstDate)
pin = Abs(DateDiff("d", Now, secondDate))
MsgBox "Days from today: " & pin, vbOKOnly, "Infos"

End Sub

Private Sub cmdcolor_Click()
Call Delai
If (pin = 10) Then
Label1.BackColor = vbYellow
ElseIf (pin < 10) Then
Label1.BackColor = vbGreen
ElseIf (pin > 10) Then
Label1.BackColor = vbRed
End If
End Sub
Celà n'affiche toujours que le vert

7 réponses

cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
28 avril 2013 à 23:28
Salut

apprends à te servir du debugger
mets un point d'arret à la ligne
If (pin = 10) Then 

lance ton prog et ensuite arrivé au point d'arret
verifie la valeur de pin (avec l'espion ou add watch)
3
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
29 avril 2013 à 08:15
Et il est également certain que tu ne travailles pas en Option Explicit (ouvre ton aide en ligne sur ce mot), car sinon, pin aurait été dénoncée dans la procédure click !


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
3
bon maintenant si dans ma table j'ai un enregistrement dont le champ datle=29/05/2013
devrait écrire dan l code
firstdate=Rs.fields["date"]?
Sachant que RS est mon recordset
0
Utilisateur anonyme
29 avril 2013 à 02:35
Pas bonjour non plus,

Je ne comprends pas, ça fait au moins 5 fois que tu poses la même question, dont deux ou trois où tu as noté plusieurs réponses acceptées.

Tiens... en épluchant tes messages postés, j'en vois un clos par un administrateur, et un autre carrément supprimé, bizarre...

- Pas de bonjour ni merci
- Le code que tu postes sur le forum toujours indenté avec le balises de code VB prévues à cet effet.
- Dans ton titre tu nous parles de changer le fond d'un label, maintenant tu nous parles d'un recordset et d'une base de données...
- La rigueur de ton écriture me fait comprendre la qualité de ton code, qui (le code) lui, n'admet aucune faute ni accentuation mal placée. (datle <> date par exemple)

Et visiblement tu n'as toujours pas lu le règlement, donc tu comprendras pourquoi personnellement, moi, j'en resterais la?

Cordialement


CF2i - Guadeloupe
Ingénierie Informatique
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tes remarques sont pertinantes mais remarque que c'est"calculer le délai et changer le fond d'un label"
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
29 avril 2013 à 08:10
Bonjour,
Il est visible que la variable pin, qui n'est déclarée et initialisée que dans la procédure delai, a pour valeur 0 dans mla procédure évènementielle cmdcolor_Click ===>> et donc : = vert.
Ceci relève des connaissances les plus élémentaires, apparemment non encore acquises, sur la portée des variables.


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
29 avril 2013 à 08:26
J'ajoute enfin que l'utilisation (comme tu l'as fait) de la valeur absolue de ta différence de dates, va à coup sûr te jouer un mauvais tour évident (quand par exemple la différence sera de plus de 10 jours en négatif) !
Et tu n'as tenu par ailleurs aucun compte de ce que je t'ai dit dans une autre discussion en ce qui concerne le calcul de la différence en jours sous VB6 (bien plus simple).
Voilà.



________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
Rejoignez-nous