cs_edrimor
Messages postés20Date d'inscriptionjeudi 1 avril 2004StatutMembreDernière intervention29 août 2004
-
9 avril 2004 à 10:01
cs_edrimor
Messages postés20Date d'inscriptionjeudi 1 avril 2004StatutMembreDernière intervention29 août 2004
-
9 avril 2004 à 10:46
j'ai un problème étrange sur une fonction test, si je ne mets qu'un seul paramètre tout va bien mais si j'en mets deux, j'ai un message d'erreur !
le problème n'apparait que si c'est des Integer comme param
je donne le code de la fonction test :
Public Function Test(num As Integer)
MsgBox "numero " & num & " !"
End Function 'ça ça marche
Public Function Test(num As Integer, num2 As Integer)
MsgBox "numeros " & num & " " & num2 & " !"
End Function 'et la jai un message d erreur du type erreur Attendu :=
Voila si quelqu'un a la solution ...
l'intuition est nécessaire comme le vent elle lève la brume
DeAtHCrAsH
Messages postés2670Date d'inscriptionvendredi 25 janvier 2002StatutMembreDernière intervention 6 février 2013 9 avril 2004 à 10:14
C'est un peu normal non ?
Une fonction doit renvoyer un resultat ...
Toi tu ne renvoie rien !!!!
Si tu n'as pas besoin de renvoyer de resultat utilises plutot une procedure!
Voici les schema de base :
-Fonction:
Public Function Test(...,...,...) As Integer
...
Test = MonResultat 'Ca doit etre un enrier vu que dans notre cas la fonction renvoi un Integer(entier)
End Function
-Procedure:
Public Sub Test(...,...,...)
...
End Sub
DeAtHCrAsH
Messages postés2670Date d'inscriptionvendredi 25 janvier 2002StatutMembreDernière intervention 6 février 2013 9 avril 2004 à 10:20
J'oublié!
Ton code devrais normallement marcher !
Regarde plutot du coté de l'appel de la fonction!
Tu ne dois pas mettre de parenthese pour les parametres !!!
Tu as du faire ca toi :
Test(5,2)
Et ca ne marche pas!
Alors fait plutot ca :
Test 5,2
Et la ca marche ;)
Puis pour tes fonctions fait plutot ca :
Public Sub Test(ByVal Num As Integer, ByVal Num2 As Integer)
...
End Sub
Cela veut dire que tu passes les parametres par valeurs et non pas par reference...
Si tu codes un peu en C/C++ tu feras vite la liaison ;)
cs_edrimor
Messages postés20Date d'inscriptionjeudi 1 avril 2004StatutMembreDernière intervention29 août 20041 9 avril 2004 à 10:21
je crois que je commence a comprendre mais si je ne veux pas que ma fonction renvoie quelque chose je ne peux rien faire ?
[font=Comic Sans MS]L'intuition est nécessaire, comme le vent elle lève la brume./font
cs_edrimor
Messages postés20Date d'inscriptionjeudi 1 avril 2004StatutMembreDernière intervention29 août 20041 9 avril 2004 à 10:25
c'est bon ça a l'air de marcher sans les parentheses!
mais si j'appelle cette fonction dans une procedure, sachant que ma fonction a beaucoup de params... ça va etre limite !
[font=Comic Sans MS]L'intuition est nécessaire, comme le vent elle lève la brume./font
Vous n’avez pas trouvé la réponse que vous recherchez ?
DeAtHCrAsH
Messages postés2670Date d'inscriptionvendredi 25 janvier 2002StatutMembreDernière intervention 6 février 2013 9 avril 2004 à 10:40
Ca depend de ce que tu veux faire....
Je suppose que tu va passer en parametres plein de Numero non ?
Si oui t'as qu'a utiliser un tableau d'entier, comme ca tu auras qu'un seul parametres!
Exemple:
Private Sub Command1_Click()
Dim MyTab(200) As Integer
'Ici on rempli le tableau a titre d'exemple
For i = 0 To 199
MyTab(i) = i
Next i
Test MyTab
End Sub
Public Sub Test(ByRef TabEntier() As Integer)
For i = 0 To 5
MsgBox "Voici le numero : " & TabEntier(i)
Next i
End Sub
Essaye cet exemple il te seras surement tres utile.
Je te ferais juste remarquer que le tableau est declaré avec 200 entier max et que dans ma boucle je vais de 0 a 199 et non pas de 1 a 200.
Le premier element d'un tableau est TOUJOURS le 0! Et non pas le 1 comme beaucoup le pense!
cs_edrimor
Messages postés20Date d'inscriptionjeudi 1 avril 2004StatutMembreDernière intervention29 août 20041 9 avril 2004 à 10:46
C'est bon ça fonctionne !
pour le tableau je pense pas que ça va être bon y'a des variables booleenes, entiere, et String
c'est rageant je connais JAVA, C, etc... mais je tombe sur un stage en VBA / Access ! (c'est tout nouveau)
Mais bon faut s'y faire !
encore merci !
@++ !
[font=Comic Sans MS]L'intuition est nécessaire, comme le vent elle lève la brume./font