Bonjour à tous,

Soit une fonction

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
17
Option Explicit
 
 
Public Function masomme(lemultiple As Integer, ParamArray lalistenum() As Variant) As Long
 
Dim s As Long
Dim i As Byte
 
s = 0
 
For i = LBound(lalistenum) To UBound(lalistenum)
        s = s + lalistenum(i)
Next i
 
masomme = s * lemultiple
 
End Function
Ce code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Debug.Print masomme(10, 1, 2, 3)
retourne la valeur attendue (60) sans problème.

MAIS, comme je l'ai déjà exprimé maintes fois, notamment dans mon billet à ce sujet, ma préférence va à la précision des paramètres
Or, cette ligne de code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
Debug.Print masomme(lemultiple:=10, lalistenum:=Array(1, 2, 3))
me retourne l'erreur
l'argument dans ParamArray ne peut pas être nommé
Je ne comprends pas.

D'avance, merci pour vos lumières.