Je ne vois pas la grosse betise

Résolu
cs_zapad Messages postés 70 Date d'inscription mercredi 30 avril 2003 Statut Membre Dernière intervention 7 juillet 2009 - 6 déc. 2008 à 22:55
cs_zapad Messages postés 70 Date d'inscription mercredi 30 avril 2003 Statut Membre Dernière intervention 7 juillet 2009 - 6 déc. 2008 à 23:27
hello bonsoir
je butte aujourd"hui  sur un probleme
la betise doit etre si grossse que je butte

le pb
a partir d'une valeur string passee en val  (direction de vent)
j appelle une fonction qui me retourne le string d'une image
( a partir de quoi j afficherai la dite image)

je vous met ci dessour la partie de code qui est concernee
merci avous
______________
Private Sub Command1_Click()
Dim dirvent As Integer
dirvent = Val(Text2.Text) ' recupere valeur ds text box
Pic_Vent dirvent          'appel funtion
Text1.Text = Pic_Vent     ' affiche le string en retour

End Sub

Public Function Pic_Vent(dirvent As Single) As String
Select Case dirvent
        Case 0 To 10
              Pic_Vent = "1n.jpg"
        Case 11 To 32
              Pic_Vent = "2nne.jpg"
        Case 33 To 54
              Pic_Vent = "3ne.jpg"
        Case 55 To 76
              Pic_Vent = "4ene.jpg"
        Case 77 To 102
              Pic_Vent = "5e.jpg"
        Case 103 To 124
              Pic_Vent = "6ese.jpg"
        Case 125 To 146
              Pic_Vent = "7se.jpg"
        Case 147 To 168
              Pic_Vent = "8sse.jpg"
        Case 169 To 190
              Pic_Vent = "9s.jpg"
        Case 191 To 212
              Pic_Vent = "10ssw.jpg"
        Case 213 To 234
              Pic_Vent = "11sw.jpg"
        Case 235 To 256
              Pic_Vent = "12wsw.jpg"
        Case 257 To 282
              Pic_Vent = "13w.jpg"
        Case 283 To 304
              Pic_Vent = "14nww.jpg"
        Case 305 To 326
              Pic_Vent = "15nw.jpg"
        Case 327 To 348
              Pic_Vent = "16nnw.jpg"
        Case 349 To 360
              Pic_Vent = "1n.jpg"
        Case Else
End Select
End Function

4 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
6 déc. 2008 à 23:07
L'erreur n'était pas le ByVal, je pense.

Par contre ta fonction attend un single alors que tu lui passe un Integer.

D'ailleurs, vu ce que fais la fonction, un single n'a pas lieu d'être, un Integer est largement suffisant

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
6 déc. 2008 à 22:57
dirvent = Val(Text2.Text) ' recupere valeur ds text box
<strike>Pic_Vent dirvent </strike>         'appel funtion
Text1.Text = Pic_Vent(dirvent)    ' affiche le string en retour

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
cs_zapad Messages postés 70 Date d'inscription mercredi 30 avril 2003 Statut Membre Dernière intervention 7 juillet 2009
6 déc. 2008 à 23:03
merci beaucoup
il restait encore une erreur
Public Function Pic_Vent(ByVal dirvent As Single) As String
manquait le byval
en tout cas c'est ok
gd merci
jm
0
cs_zapad Messages postés 70 Date d'inscription mercredi 30 avril 2003 Statut Membre Dernière intervention 7 juillet 2009
6 déc. 2008 à 23:27
Non le byval n'etait pas l erreur initiale
mais apres avoir corrigé d'apres ton message
la seconde erreur est apparue
en tout cas ca m a debloqué
je vais pouvoir poursuivre cette nuit
encore merci
a +
jm
0
Rejoignez-nous