Bonjour a tous
J’ai ecrit la function ci-dessous qui retourne dans un ARRAY a la fois l’addition et la soustraction des deux variables numeriques qu’elle recoit. Cela marche tres bien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 Public Function fctPlusMinus(dblA As Double, dblB As Double) As Variant 'Cette fonction retourne l'addiotion et la soustraction de deux valeurs dans un Array. Dim arrTemp() As Double 'Array dynamique ReDim arrTemp(1 To 1, 1 To 2) As Double 'Calculer les valeurs a retourner arrTemp(1, 1) = dblA + dblB '<== l'addition arrTemp(1, 2) = dblA - dblB '<== la soustraction 'Attribuer les resultats a un Array fctPlusMinus = arrTemp End FunctionMais j’ai entendu dire qu’on peut obtenir le meme resultat en passant par les deux moyens suivants:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Sub Call_fctPlusMinus() 'Tester la fonction ci-dessus. Debug.Print fctPlusMinus(12, 5)(1, 1) '=> 17 OK Debug.Print fctPlusMinus(12, 5)(1, 2) '=> 7 OK End Sub
1=>>Creation de module de classe
2==>Utilisation de ByRef pour les arguments
Je ne vois pas comment cela peut se faire. Pouvez-vous svp m’aider a reproduire la meme function (qui retourne l’addition et la soustraction) en utilisant les 2 methodes mentionnees ci-dessus ?
Cordialement.
Partager