Procédure à N paramètres

neurosupherot Messages postés 81 Date d'inscription jeudi 7 août 2003 Statut Membre Dernière intervention 7 novembre 2007 - 19 oct. 2005 à 22:55
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 - 20 oct. 2005 à 10:53
Bonjour, j'aimerais savoir si c'est possible de créer une fonction à N
paramètres , car je suis en train de faire un prog pr dégradé, et je
suis bloqué au niveaux des n couleurs, car j'aimerai que le module par
apres soit autonaume.



C'est à dire si je fais



private sub myproc(param1, param2,optional Param4],[Param........n])

'mais sans tout avoir a taper et sans définir de limites à la procédure

for i =0 to NombreDeParam

dégradé param(i), param(i+1) <<<Voila ce que je chercher à faire, mais je pense que c'est impossible!

next

end sub

3 réponses

neurosupherot Messages postés 81 Date d'inscription jeudi 7 août 2003 Statut Membre Dernière intervention 7 novembre 2007
19 oct. 2005 à 23:02
En fait je me base par rapport au batch,

on peut faire %1, %2 pour avoir la valeur du param 1 et 2!

En fait je viens de trouver une autre solution finalement. mais si qqn
sait comment faire comme le batch, je suis à l'écoute! merci
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
19 oct. 2005 à 23:11
Public Function Somme(ParamArray Params() As Variant) As Integer
Dim I As Integer
For I = LBound(Params) To UBound(Params)
Somme = Somme + Params(I)
Next
End Function

Public Sub test()
Dim R As Integer

MsgBox Somme(1, 10, 17, 567)
MsgBox Somme(1, 3)
MsgBox Somme(189, 2356, 678, 3265, 789)

End Sub

Bonne programmation
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
20 oct. 2005 à 10:53
Lut,

'Tu peux utiliser Optional mais les arguments qui le suive doivent être aussi Otional


'ex:


'Cette déclaration est bonne


Sub MyProg(Param1 As Long , Param2 As Long , Optional Param3 As Long , Optional param4 As Long


» )


'Celle là renvoie un message d'erreur


Sub MyProg(Param1 As Long , Param2 As Long , Optional Param3 As Long , param4 As Long )



'tu peux donner une valeur par défaut sur tes Optional


Sub MyProg(Param1 As Long , Param2 As Long , Optional Param3 As Long = 255 , Optional


» param4 As Long )



'Si tu utilises ParamArray tu ne peux pas mettre d'Optional


'Celle là renvoi un message d'erreur


Sub MyProg(Param1 As Long , Paramarray toto() As Long , Optional Param3 As Long ,


» Optional param4 As Long )

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
Rejoignez-nous