Bonjour le forum !!!
Bon ce matin je bloque un peu
voila je souhaite faire des régressions : linéaire dans un premier temps puis polynomiales dans un deuxième temps, j'augmente l'ordre du polynome jusqu'a l'ordre 5.
Je récupère a chaque régression, le coefficient R² correspondant que je stock dans un tableau : montab(ordre)
Enfin je regarde quel coeff R² dans mon tableau est le plus grand et j'affiche sur ma feuille l'ordre, mle R² et la courbe correspondante, et je vire tout les autres.
Le problème c'est que
l'erreur vient de cette ligne
j'avais essayé
Meme erreur dans les 2 cas.
Je vous mets le code de ce module ci dessous bien que je n'ai besoin d'aide que sur la partie mettre les données dans le tableau. Enfin pour le moment
Bon ce matin je bloque un peu
voila je souhaite faire des régressions : linéaire dans un premier temps puis polynomiales dans un deuxième temps, j'augmente l'ordre du polynome jusqu'a l'ordre 5.
Je récupère a chaque régression, le coefficient R² correspondant que je stock dans un tableau : montab(ordre)
Enfin je regarde quel coeff R² dans mon tableau est le plus grand et j'affiche sur ma feuille l'ordre, mle R² et la courbe correspondante, et je vire tout les autres.
Le problème c'est que
dans mon tableaul'incide n'appartient pas à la sélection
l'erreur vient de cette ligne
VB:
montab("" & ordre) = rdeux
VB:
montab(ordre) = rdeux
Je vous mets le code de ce module ci dessous bien que je n'ai besoin d'aide que sur la partie mettre les données dans le tableau. Enfin pour le moment
VB:
Sub recap()
Dim montab() As Double
rang3 = Worksheets("DonnéesCorrélations").UsedRange.Rows.Count
' Supprimer anciens graphs '
For Each Legraphe In ActiveSheet.ChartObjects
Legraphe.Delete
Next
' Boucle afin de faire TOUT les graph
For k = 1 To 2
i = 1
li = 2
col = 1
For l = 1 To 4
For m = 1 To 5
' Ajouter nouveau graph '
ActiveSheet.Shapes.AddChart.Select
' Supprimer séries déjà affichées '
Do Until ActiveChart.SeriesCollection.Count = 0
ActiveChart.SeriesCollection(1).Delete
Loop
' Choix type de courbe '
ActiveChart.ChartType = xlXYScatterLines
' Choix et ajout des séries '
ActiveChart.SeriesCollection.NewSeries
ActiveChart.HasTitle = True
abscisse k, l
ordonnée m
' Facteur de corrélation '
For ordre = 1 To 5
If ordre = 1 Then
ActiveChart.SeriesCollection(1).Trendlines.Add
ActiveChart.SeriesCollection(1).Trendlines(ordre).Select
Selection.DisplayRSquared = True
rdeux = Right(ActiveChart.SeriesCollection(1).Trendlines("" & ordre).DataLabel.Text, 6)
'MsgBox rdeux
montab("" & ordre) = rdeux
Else
ActiveChart.SeriesCollection(1).Trendlines.Add
ActiveChart.SeriesCollection(1).Trendlines("" & ordre).Select
With Selection
.Type = xlPolynomial
.Order = 2
End With
Selection.DisplayRSquared = True
rdeux = Right(ActiveChart.SeriesCollection(1).Trendlines("" & ordre).DataLabel.Text, 6)
montab("" & ordre) = rdeux
End If
Next
For ordre = 1 To 5
MsgBox montab(ordre)
Next
'Range("F" & li + 4).Value = ActiveChart.SeriesCollection(1).Trendlines(1).DataLabel.Text
' Mise en place des graphiques '
If k = 1 Then
With Worksheets("Récapitulatif")
.ChartObjects(i).Top = .Rows(li).Top
.ChartObjects(i).Left = .Columns(col).Left
.ChartObjects(i).Height = 165.75
.ChartObjects(i).Width = 300
End With
Else
With Worksheets("Récapitulatif1")
.ChartObjects(i).Top = .Rows(li).Top
.ChartObjects(i).Left = .Columns(col).Left
.ChartObjects(i).Height = 165.75
.ChartObjects(i).Width = 300
End With
End If
i = i + 1
li = li + 13
Next
Next
Worksheets("Récapitulatif1").Select
Next
End Sub
Dernière édition: