Créer une fonction

Résolu
thetoto52 Messages postés 87 Date d'inscription lundi 9 janvier 2006 Statut Membre Dernière intervention 11 novembre 2008 - 9 févr. 2006 à 14:35
thetoto52 Messages postés 87 Date d'inscription lundi 9 janvier 2006 Statut Membre Dernière intervention 11 novembre 2008 - 9 févr. 2006 à 16:55
Boujour,

Voila je ne trouve pas comment faire une fonction qui puisse revoyer une valeur?

svp aidez moi

17 réponses

NHenry Messages postés 15030 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 26 novembre 2022 157
9 févr. 2006 à 14:51
Bonjour

Pour retourner une valeur, remplacer sub par function :
private function Mafct(byval MonParam as SonType) as TypeDeRetour

Opérations

VB6/VB.NET MaFct=Mavaleur
VB.NET Return Mavaleur

Il est plus facile de batiser kk1 que de la convertir. (surtout en programmation)
Une question se pose sur le forum, pas en privé
NHenry (VB6, VBA excel, VB.NET, C++, C#.Net)
3
gallyhc Messages postés 386 Date d'inscription samedi 4 octobre 2008 Statut Membre Dernière intervention 19 février 2018 2
9 févr. 2006 à 14:52
Bonjour,

Voici une fonction simple qui additionne 2 valeurs "A,B". A toi d'exploité la méthone!!!

Private Sub Form_Load()
' ENVOIS LES INFORMATIONS A LA FONCTION.
MsgBox (setCalcAB(10, 14))


End Sub


Private Function setCalcAB(ByVal lngA As Long, ByVal lngB As Long) As Long
' ADDITIONNE "A+B" ET L'ENVOIS DANS LA FONCTION.
setCalcAB = lngA + lngB


End Function

Bonne Programmation,
[Gally Home Corp]
3
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Modérateur Dernière intervention 23 décembre 2008 23
9 févr. 2006 à 14:52
jrivet> Tu as décris une procédure.







' Command1_Click est une procédure.

' Elle ne renvoit pas de données.

Private Sub Command1_Click()

MsgBox Multiplie(3,4) ' => affichera 12

End Sub



' Voici un exemple de fonction. Deux paramètres de type Long.

' Un type de retour : Long

Public Function Multiplie(A As Long, B As Long) As Long

Multiplie = A*B

End Function

Manu
3
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
9 févr. 2006 à 15:43
Salut,

Alors maintenant que j ai lu correctement je peut peu etre essayer de repondre correctement aussi ;)

La fonction suivante te retourne la position du caratere @ dans chaine si elle
ne le trouve pas elle te retourneras 0

Public Function Test@(Chaine As String)as integer
Test@ = InStr(1, Chaine, "@")
End Function

tu dis: "si elle trouve un @ elle fase qqch" c est quoi ce quelque chose.
3

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

Posez votre question
wanure Messages postés 39 Date d'inscription lundi 13 septembre 2010 Statut Membre Dernière intervention 23 novembre 2012
9 févr. 2006 à 14:36
Bonjour,

Pourrais-tu dire ce que ta fonction doit faire?
0
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
9 févr. 2006 à 14:37
Salut,

Sur une feuille tu mets un Command Button

Tu double clique dessus

ca te donne:


Private Sub Command1_Click()

End Sub


Et la dedans tu fais ce que tu veux

Tu veux qu'il te retourne une valeur, alors:


Private Sub Command1_Click()
msgbox "10"
End Sub


Si ce n'était pas du tout ca (et je crois que c est le cas), explique mieux ton probleme
0
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
9 févr. 2006 à 14:55
Econs> Tu as tout a fait raison (j ai craque du s....) j ai lu trop vite.

Veuillez tous m'excuser

@+
Julien
0
jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
9 févr. 2006 à 15:04
Bonjour,

Voici un exemple de fonction qui renvoie la valeur d'une commission sur une vente.



Option Explicit

Function Commission(Ventes)

Const Tier1 = 0.08

Const Tier2 = 0.105

Const Tier3 = 0.12

Const Tier4 = 0.14

'Calcul de la commission sur les ventes

Select Case Ventes

Case 0 To 9999.99: Commission = Ventes * Tier1

Case 1000 To 19999.99: Commission = Ventes * Tier2

Case 20000 To 39999.99: Commission = Ventes * Tier3

Case Is >40000: Commission Ventes * Tier4

End Select

End Function



Private Sub CalCom()

Dim Ventes As Long

Ventes = InputBox("Entrez le montant des ventes en ? :", "Commission sur ventes")

MsgBox "La commission est de " & Commission(Ventes) & " ?"

End Sub



Private Sub Command1_Click()

CalCom

End Sub



jpleroisse



Si une réponse vous convient, cliquez Réponse Acceptée.
0
jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
9 févr. 2006 à 15:06
Re,

Petite erreur, c'est Case 10000 et non Case 1000



jpleroisse
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Modérateur Dernière intervention 23 décembre 2008 23
9 févr. 2006 à 15:13
jrivet > Pas besoin de te flageller. Ca arrive à tout le monde.

Manu
0
thetoto52 Messages postés 87 Date d'inscription lundi 9 janvier 2006 Statut Membre Dernière intervention 11 novembre 2008
9 févr. 2006 à 15:35
bien en fait je veut que ma fonction elle regarede un chaine et que si elle trouve un @ elle face quelque chose sur la chaine et la retourne sinon qu'elle la retourne telquel.
0
thetoto52 Messages postés 87 Date d'inscription lundi 9 janvier 2006 Statut Membre Dernière intervention 11 novembre 2008
9 févr. 2006 à 16:01
pour le rest je sais faire il me manquais juste pour retourner merci
0
thetoto52 Messages postés 87 Date d'inscription lundi 9 janvier 2006 Statut Membre Dernière intervention 11 novembre 2008
9 févr. 2006 à 16:02
je pençais que c'étais comme en c avec un return (non de la variable)
0
gallyhc Messages postés 386 Date d'inscription samedi 4 octobre 2008 Statut Membre Dernière intervention 19 février 2018 2
9 févr. 2006 à 16:02
Re,

Je comprend pas vraiment pourquoi, il y a plein de reponse a une aide aussi simple... et surtout pourquoi tout le monde vient avec sa petite fonction. surtout que des reponses pour ma part correcte on deja ete effectuer...

Bonne programmation,
[Gally Home Corp]
0
gallyhc Messages postés 386 Date d'inscription samedi 4 octobre 2008 Statut Membre Dernière intervention 19 février 2018 2
9 févr. 2006 à 16:05
La je comprend encore moin des reponse comme la mienne ou même celle de econs sont correcte mais non accepte je comprend plus vraiment ce forum
0
NHenry Messages postés 15030 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 26 novembre 2022 157
9 févr. 2006 à 16:28
Bonjour

Jalou.

Il est plus facile de batiser kk1 que de la convertir. (surtout en programmation)
Une question se pose sur le forum, pas en privé
NHenry (VB6, VBA excel, VB.NET, C++, C#.Net)
0
thetoto52 Messages postés 87 Date d'inscription lundi 9 janvier 2006 Statut Membre Dernière intervention 11 novembre 2008
9 févr. 2006 à 16:55
tu as raison il voulais que sa reponce soit validé mail l'essanciel c'est que quelqu'un ai donné la réponce non en plus il n'étais pas le premier a donner la bonne réponce
0