erreur: type d'argument byref incompatible

  • Initiateur de la discussion Initiateur de la discussion Excel.Deb
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

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
 
Votre variable duree n'est pas dimensionnée comme un tableau alors vous ne pouvez pas spécifier d'indices.
Vraiment incompréhensible ce que vous voulez faire.
Ne pourriez vous joindre un tout petit exemple de résultat attendu sur un petit nombre de données, uniquement ce qui intervient dans le calcul ?
 
Dernière édition:
Bonjour.
La fonction calculant la formule en encadré s'écrirait comme ça :
VB:
Option Explicit
Function dm(ByVal R As Range, Optional ByVal m As Long) As Double
   Dim t(), S As Double, i As Long
   If R.Rows.Count = 1 Then ReDim t(1 To 1, 1 To 1): t(1, 1) = R.Value Else t = R.Value
   If m = 0 Then m = UBound(t, 1)
   For i = 1 To m: S = S + (m - i + 1) * t(i, 1): Next i
   dm = S / m
   End Function
Je déteste utiliser des noms de variables ne commençant pas par une majuscule. Mais puisque les matheux font comme ça …
Écrite dans une cellule cette formule renvoie 2,96770751 :
Code:
=dm($D$2:$D$182)
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
9
Affichages
608
Retour