Indicateur tricolore

benvba28 Messages postés 2 Date d'inscription lundi 26 février 2007 Statut Membre Dernière intervention 27 février 2007 - 26 févr. 2007 à 22:38
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 - 27 févr. 2007 à 21:06
Bonjour !
pourriez-vous m'aider.... je débute !!!
Je souhaiterais créer une structure VBA type "feu rouge", "feu ricolore", à savoir lorsque :
valeur> 10, le feu rouge s'allume
valeur < 5, le feu vert s'allume

Merci de votre aide!

9 réponses

cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
26 févr. 2007 à 22:51
Salut,

Et bien tu dessine une Led..un cercle, et tu lui attribu la couleur que tu veux suivant les conditions que tu as citées dans ton post...
Tu dis VBA, et tu poste en VB6, lequel est le bon ?

A+
Exploreur
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
26 févr. 2007 à 23:25
Re-Salut,

Si Vb6 essaye cela(je pense que c'est faisable en vba)..
Il te faut : 1 Timer (interval à 500), une PictureBox, colle le contrôle sur une form, voici le code pour tes essais :

Private Sub Timer1_Timer()


' Variable comptage
 Static Temp As Byte
 
' Attribution valeur
 Temp = Temp + 1
 
' Condition
If Temp = 5 Then
   Picture1.BackColor = vbGreen
ElseIf Temp = 10 Then
   Picture1.BackColor = vbYellow
ElseIf Temp = 15 Then
   Picture1.BackColor = vbRed
End If


End Sub

A+
Exploreur
0
Utilisateur anonyme
26 févr. 2007 à 23:36
Salut,

Je ferai plutot un switch de cette façon :

Select Case Temp
  Case Is < 5
    Picture1.BackColor = vbGreen
  Case Is > 10
    Picture1.BackColor = vbRed
  Case Else
    Picture1.BackColor = vbYellow
End Select

Celà correspond plus à la demande de notre ami.






__________
Kenji
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
26 févr. 2007 à 23:45
Bonsoir Charles Racaud,

Tu as tout à fait raison, il faut que je prenne le pas sur les select Case !!

A+
Exploreur
0

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

Posez votre question
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
27 févr. 2007 à 08:32
Bonjour,

On va s'amuser un peu avec RGB (j'ai choisi une picturebox pour montrer la couleur, mais ça peut être n'importe quoi)

Private Sub Command1_Click()
    Dim toto As Integer
    toto = 4
    Picture1.BackColor = allume(toto)
    MsgBox "vert"
    toto = 6
    Picture1.BackColor = allume(toto)
    MsgBox "blanc"
    toto = 12
    Picture1.BackColor = allume(toto)
    MsgBox "rouge"
End Sub



Private Function allume(toto As Integer) As Long
   R = IIf(toto > 10, 255, 0)
   G = IIf(toto < 5, 255, 0)
   allume = RGB(R, G, B)   If allume 0 Then allume vbWhite
End Function







Il est bien clair que, pour une même couleur, seul le code en rouge suffit, le reste n'étant là qu'en démonstration
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
27 févr. 2007 à 11:20
ou encore :

Private Function allume(toto As Integer) As Long
   If toto < 5 Then G = 255
   If toto > 10 Then R = 255
   If (R + G) = 0 Then
     allume = vbWhite: Exit Function
   End If
   allume = RGB(R, G, B)
End Function
0
benvba28 Messages postés 2 Date d'inscription lundi 26 février 2007 Statut Membre Dernière intervention 27 février 2007
27 févr. 2007 à 11:27
Merci de votre aide !
Je vais maintenant m'atteler à la tâche et essayer vos diverses solutions.
@+
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
27 févr. 2007 à 16:47
Exploreur
-> pas de timer en vba ;)
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
27 févr. 2007 à 21:06
Salut PCPT,

Merci de l'info..Maitenant je le saurai...

A+
Exploreur
0
Rejoignez-nous