Récupérer les valeurs d'une équation de droite écrit dans une cellule

Bonjour le Forum,

Aujourd'hui je cale sur un problème que je n'arrive pas à résoudre, j'ai vu beaucoup d'autre sujet similaire mais cependant je n'en ai pas trouvé dans le même cas que moi.

Je voudrais afficher dans deux cellules séparé les coefficients des courbes de tendances de mes graphiques (aux nombres de 4), les équations des courbes étant pour le moment écrit dans une cellule grâce au code suivant :

Sub Equation()
    Dim Graph As Chart, Feuille As Worksheet
    Dim Equation As String
    ReDim Coef(4, 2) As Integer

    Set Feuille = ActiveWorkbook.Worksheets(1)
    For i = 1 To 4
        'affichage des courbes de tendances sur les graphiques et remplissage des cellules 
        With Feuille.ChartObjects(i).Chart.SeriesCollection(1).Trendlines(1)
            .Type = xlLinear
            .DisplayEquation = True
            .DisplayRSquared = False
            Sheets("Graphiques").Cells(9 + 2 * i, 12).Value = .DataLabel.Text 'Affiche les équations des courbes en L11,L13...
        End With
    Next
End Sub

L'idéal serait d'afficher les coefficient directeur en M11,M12... et les ordonnées en N11,N12... de ma feuille Graphiques, auriez vous une idée ?

Cordialement.

bonjour,

une proposition d'adaptation de ton VBA

Sub Equation()
    Dim Graph As Chart, Feuille As Worksheet
    Dim Eq As Variant
    ReDim Coef(4, 2) As Integer

    Set Feuille = ActiveWorkbook.Worksheets(1)
    For i = 1 To 4
        'affichage des courbes de tendances sur les graphiques et remplissage des cellules
        With Feuille.ChartObjects(i).Chart.SeriesCollection(1).Trendlines(1)
            .Type = xlLinear
            .DisplayEquation = True
            .DisplayRSquared = False
            Eq = .DataLabel.Text 'Affiche les équations des courbes en L11,L13...
            Eq = Replace(Replace(Eq, "y = ", ""), "x", "")
            Eq = Split(Eq, "+")
            Sheets("Graphique").Cells(9 + 2 * i, 12).Value = Eq(0)
            On Error Resume Next
            Sheets("Graphique").Cells(9 + 2 * i, 13).Value = Eq(1)
            On Error GoTo 0
        End With
    Next

End Sub

Sache que cette info est également disponible via les fonction excel (pente(slope) et ordonnee.origine (intercept) ou encore droitereg(linest))

Bonjour h2so4,

Merci pour ton aide c'est exactement ce que je souhaitais faire, je vais regarder du coté des fonction excel (pente(slope) et ordonnee.origine (intercept) du coup pour la culture. J'avais vu qu'on pouvait utiliser droitereg mais je n'ai pas réussi à me dépatouiller avec..

Cordialement.

Rechercher des sujets similaires à "recuperer valeurs equation droite ecrit"