Subs ? Functions ?

cs_KaTSuo Messages postés 7 Date d'inscription vendredi 12 avril 2002 Statut Membre Dernière intervention 16 mars 2005 - 2 mars 2005 à 16:27
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 - 3 mars 2005 à 10:12
Bonjour



Je voudrais savoir quelle est la différence entre un Sub et un Function
dans le code d'un programme en Visual Basic. Concrètement quels sont
leurs rôles respectifs :) !



Merci d'avance !

7 réponses

cs_trabice Messages postés 328 Date d'inscription mercredi 26 novembre 2003 Statut Membre Dernière intervention 24 novembre 2005 1
2 mars 2005 à 16:48
lu
il y en peut etre d autre mé pour moi la principale différence est que
la fonction a un retour
alors que la sub n'en a pas
ex :
function addition(i1 as integer,i2 as integer)as integer
return i1+i2
end function

on peut faire
dim test as integer
test = addition(5,6)

alors que si on fait une sub addition,on aura pa de retour il faudra mettre le résultat ds une variable pour l exploiter

En esperant avoir été assez clair

Fabrice
0
cs_max68 Messages postés 30 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 20 juin 2008
2 mars 2005 à 16:51
La différence est simple:

Sub, c'est une procédure, c'est à dire que cela éxécute purement et simplement du code, dans laquelle tu peux mettre une variable d'entrée.

Function, est comme son nom l'indique, une fonction. La fonction a des variables d'entrées et de sorties, car la fonction retourne une valeur, d'après sa définition.

Voila, je ne suis pas prof, donc si tu n'as pas compris, c'est pas grave, je suis pas loin, j'essayerai de t'éclairer un peu mieux ;)

Hopla

M@x
0
cs_KaTSuo Messages postés 7 Date d'inscription vendredi 12 avril 2002 Statut Membre Dernière intervention 16 mars 2005
2 mars 2005 à 16:52
Ok je pense avoir compris...



Une dernière question cependant... Est-il possible de "réutiliser" une sub ? Je m'explique.



Dans mon code je créer un "Sub addition".

Est-ce que plus loin, dans un autre fichier, je peu réutiliser "Sub
addition" pour déclencher une portion de code en même temps que l'autre
portion de code du premier "Sub addition" ?
0
cs_trabice Messages postés 328 Date d'inscription mercredi 26 novembre 2003 Statut Membre Dernière intervention 24 novembre 2005 1
2 mars 2005 à 16:52
j oubliai le integer en rose correspond au type de donnée retournée
0

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

Posez votre question
cs_trabice Messages postés 328 Date d'inscription mercredi 26 novembre 2003 Statut Membre Dernière intervention 24 novembre 2005 1
2 mars 2005 à 16:56
oui tu peux
si tu déclare ta sub addition dans une form,tu pourra l utiliser ds toute la form
si tu met ta sub ds un module en public ce sera pour toutes les forms

fabrice
0
cs_KaTSuo Messages postés 7 Date d'inscription vendredi 12 avril 2002 Statut Membre Dernière intervention 16 mars 2005
2 mars 2005 à 16:59
Oki parfait ^^ !

Merci beaucoup pour vos réponses !
0
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
3 mars 2005 à 10:12
Petites corrections sur ces diverses réponses :
1- Une fonction peux eventuellement retourner une valeur et une seule. A noter que le retour n'est pas obligatoire
2- Les sub comme les functions peuvent avoir de 0 à n arguments transmis lors de l'appel.
3- Les arguments peuvent être transmis par valeur ou par référence
4- Une sub ou une fonctions est visible dans tout le module ou elle est déclarée. Elle est visible depuis les autres modules d'un projet si elle est définit "Public" et dans son module uniquement si elle est "Private". Applicable si la sub/fonction est définit dans un module standard ou de form
5- Le but d'une sub/fonction c'est de regrouper des instructions accomplissant une tâche donnée et répétitive. Ne pas faire des sub/fonctions pour le plaisir

Christophe R
0
Rejoignez-nous