Comment retourner une valeur calculée dans une fonction?

Daydayer Messages postés 201 Date d'inscription mercredi 1 décembre 2004 Statut Membre Dernière intervention 13 août 2005 - 27 mai 2005 à 11:39
Daydayer Messages postés 201 Date d'inscription mercredi 1 décembre 2004 Statut Membre Dernière intervention 13 août 2005 - 27 mai 2005 à 12:58
bonjour!

j'ai le code suivant:

Public Sub PasteLastData(SelectedData As String)
If SelectedData <> "" Then
Call PasteData(SelectedData, SheetOfSearch, (LastResultLine), Count)
Range("A1").Select
LastResultLine = InitVar((LastResultLine), Count, SelectedData)


End If

la fonction PasteData, pas de problème. Je récupère la valeur de LastResultLine calculée par InitVar. le problème, c'est que je dois aussi la sortir de PasteLastData parce que j'en ai encore besoin pour la suite, mais j'y arrive pas... c'est galère les fonctions imbriquées...

si vous pouvez m'aider ce serait la fête!

merki!
Daydayerement Vôtre

4 réponses

lijohann Messages postés 76 Date d'inscription lundi 26 juillet 2004 Statut Membre Dernière intervention 8 avril 2008 1
27 mai 2005 à 12:17
tu peuxc mettre un parametre en byref et recuperer la valeur dans ta procedure appelante, par ex :

sub ma procedure
dim mavaleur as string
.
.
.
pasteLastData(selecteddate, mavaleur)
.
.
.
mavaleur=mavaleur+1

end sub
sub PasteLastData(byval SelectedData As String, byref valeur as string)
.
.
.
valeur = 10
.
.
end sub
0
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
27 mai 2005 à 12:19
vu le message précédent ...

InitVar est forcément une fonction puisqu'il renvoie une valeur:

LastResultLine = InitVar()



tu fais la même chose:



Public Function PasteLastData(SelectedData As String) As Double

- - - - - - - - - -

PasteLastdata = LastResulLine

End Sub




Daniel
0
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
27 mai 2005 à 12:23
rectification:

Public Function PasteLastData(SelectedData As String) As Double
- - - - - - - - - -
PasteLastdata = LastResulLine
End Function


à moins que la variable LastResulLine soit déclarée en Public, dans ce cas là il n'y a pas besoin de la passer en paramètres.


Daniel
0
Daydayer Messages postés 201 Date d'inscription mercredi 1 décembre 2004 Statut Membre Dernière intervention 13 août 2005
27 mai 2005 à 12:58
ok je vais voir...

merci de votre aide.

Daydayerement Vôtre
0
Rejoignez-nous