Formule matricielle avec plages de données variables
Résolu
Pouschkine
Messages postés
13
Statut
Membre
-
Pouschkine Messages postés 13 Statut Membre -
Pouschkine Messages postés 13 Statut Membre -
Bonjour,
J'aurais besoin de votre aide. J'ai un problème concernant l'utilisation d'une formule matricielle et malgré mes recherches sur internet je ne trouve pas la solution.
Je voudrais obtenir dans une colonne 1 d'une feuille 1 les coefficients directeurs de droites obtenues par régression linéaire. J'utilise pour cela la formule :
=INDEX(DROITEREG(yrange;xrange);0)
(yrange et xrange sont des plages de cellules contenues dans une feuille 2)
Les lignes de début et de fin de plages de données varient. J'ai réalisé une macro qui m'a permis d'obtenir en feuille 1 :
- en colonne 2 la ligne de début de plage
- en colonne 3 la ligne de fin de plage.
pour obtenir le résultat souhaité j'utilise la macro :
J'ai une erreur au niveau de :
13 incompatibilité de type.
De plus, la formule est insérée sur les premières lignes mais prend les plages y et x dans la feuille 1 au lieu de la feuille 2
Merci de votre aide
Pauline
J'aurais besoin de votre aide. J'ai un problème concernant l'utilisation d'une formule matricielle et malgré mes recherches sur internet je ne trouve pas la solution.
Je voudrais obtenir dans une colonne 1 d'une feuille 1 les coefficients directeurs de droites obtenues par régression linéaire. J'utilise pour cela la formule :
=INDEX(DROITEREG(yrange;xrange);0)
(yrange et xrange sont des plages de cellules contenues dans une feuille 2)
Les lignes de début et de fin de plages de données varient. J'ai réalisé une macro qui m'a permis d'obtenir en feuille 1 :
- en colonne 2 la ligne de début de plage
- en colonne 3 la ligne de fin de plage.
pour obtenir le résultat souhaité j'utilise la macro :
Sub droite()
Dim m As Integer
Dim i As Long
Dim k As Long
Dim xrange As Range
Dim yrange As Range
For m = 9 To 71 'lignes pour lesquelles je souhaite obtenir le coefficient directeur
i = Worksheets("Feuille1").Cells(m, 17).Value 'ligne de début de la plage
k = Worksheets("Feuille1").Cells(m, 19).Value 'ligne de fin de la plage
Set xrange = Worksheets("Data").Range("Y" & i & ":Y" & k)
Set yrange = Worksheets("Data").Range("O" & i & ":O" & k)
Worksheets("Feuille1").Cells(m, 15).Select
Selection.FormulaArray = _
"=INDEX(LINEST(" & yrange.Address & "," & xrange.Address & "),0)"
Next
End Sub
J'ai une erreur au niveau de :
i = Worksheets("Feuille1").Cells(m, 17).Value
13 incompatibilité de type.
De plus, la formule est insérée sur les premières lignes mais prend les plages y et x dans la feuille 1 au lieu de la feuille 2
Merci de votre aide
Pauline
A voir également:
- Formule matricielle avec plages de données variables
- Fuite données maif - Guide
- Formule si et - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Formule mathématique - Télécharger - Études & Formations
- Supprimer les données de navigation - Guide
Effectivement je me suis rendue compte de mon erreur et ai changé mon post initial (surement pendant que vous étiez en train de me répondre).
Du coup maintenant j'ai une nouvelle erreur : 13 incompatibilité de type.
La macro commence à me remplir la colonne 5 lignes mais la formule qui est insérée est :
Ainsi elle prend :
- les bonnes plages
- pas la bonne feuille (feuille 1 au lieu de la feuille 2)
Je supposes que ta feuille active est la feuille "datas" :
Sinon, dans une formule, il faut aussi indiquer le nom de la feuille, exemple :
Data!A1:F152
J'ai essayé votre code mais j'ai toujours la même erreur de type 13 sur la ligne
C'est du au fait de ce ne soit pas la bonne feuille qui est active ?
Et concernant votre dernière remarque portant sur l'insertion du nom de la feuille dans la formule. C'est bien dans la formule Index avant yrange et xrange que je dois insérer Data! ?
Merci encore