erreur: type d'argument byref incompatible

Excel.Deb

XLDnaute Nouveau
Bonjour,
Je souhaite réaliser une macro qui effectue la somme arithmétique avec coefficient et retourne le résultat dans une cellule déterminée.
cependant,le débogeur me sort l'erreur type d'argument byref incompatible.
voici le code:
Function minimiser_dm(i As Integer, m As Integer) As Integer
Dim duree As Variant
Dim dm As Long

dm = 0

For i = 1 To m
dm = dm + (m - i + 1) * Cells(i, 4)
Next i

duree(1, 2) = dm

End Function
Sub macro_somme()

Call minimiser_dm(i, m)

End Sub
Merci de bien vouloir détecter la faille
 

harry226h

XLDnaute Junior
Bonjour Deb, le forum
Non testé mais essai ca
VB:
Function minimiser_dm()
 Dim i As Integer
 Dim m As Integer 'attribue une valeur à m
 Dim duree As Variant
 Dim dm As Long

 dm = 0

 For i = 1 To m
 dm = dm + (m - i + 1) * Cells(i, 4)
 Next i

 duree(1, 2) = dm

 End Function

cdt

A
 

Excel.Deb

XLDnaute Nouveau
vous avez dit que je n'ai pas besoin d'une macro.
j'ouvre le visual basic j'écris ma fonction...à la compilation le vbe me demande d'affecter une macro à cette fonction sinon ca se compile pas.
ma question est comment je pourrais exécuter cette fonction sans passer par la macro?
 

Excel.Deb

XLDnaute Nouveau
même erreur qu'avant:incompatibilité de type
VB:
Function minimiser_dm(ByVal i As Integer, ByVal m As Integer) As Integer

 Dim duree As Variant
 Dim dm As Long

 dm = 0

 For i = 1 To m
 dm = dm + (m - i + 1) * Cells(i, 4)
 Next i

 [COLOR=rgb(250, 197, 28)]duree(1, 2) = dm[/COLOR]
minimiser_dm = duree(1, 2)
 End Function

Sub macro_somme()

Call minimiser_dm(i, m)

End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 329
Membres
103 182
dernier inscrit
moutassim.amine