Bonjour
Voici mon code VBA, j'ai plusieurs feuille avec des colonnes dont le nombre de ligne varie. Pas de problème je viens déterminer mon nombre de ligne et même l'afficher dans une cellule.
Par contre je n'arrive pas à tracer un graphique avec pour consigne de prendre les valeurs jusqu'à la dernière ligne de la colonne.
Sub Macro3()
'
' Macro3 Macro
'
'
Dim MS As Worksheet, sh As Worksheet
Dim DL As Long
Sheets.Add After:=Sheets(Sheets.Count)
ActiveSheet.Name = "MODULE-SECANT"
Range("A1").Select
ActiveCell.FormulaR1C1 = "Module sécant MPA"
l = 1:
Set MS = Worksheets("MODULE-SECANT")
For Each sh In ThisWorkbook.Worksheets
If sh.Name <> MS.Name Then
l = l + 1
sh.Activate
DL = Range("B" & Rows.Count).End(xlUp).Row
Range("H1").Select
ActiveCell.Value = DL
Columns("C:F").Select
Range("C4").Activate
Selection.Delete Shift:=xlToLeft
Columns("C:C").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("C7").Select
ActiveCell.FormulaR1C1 = "=RC[+1]/49.6755"
Range("C6").Select
ActiveCell.FormulaR1C1 = "contrainte(Mpa)"
Range("C7").Select
Selection.AutoFill Destination:=Range(Cells(7, 3), Cells(DL, 3))
Range(Cells(7, 3), Cells(DL, 3)).Select
Range("M15").Select
ActiveSheet.Shapes.AddChart.Select
ActiveChart.ChartType = xlXYScatterSmoothNoMarkers
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(1).Name = "=""" & sh.Name & """"
ActiveChart.SeriesCollection(1).XValues = "='" & sh.Name & "'!$E$7:$E$DL"
ActiveChart.SeriesCollection(1).Values = "='" & sh.Name & "'!$C$7:$C$'DL'"
ActiveChart.SeriesCollection(1).Trendlines.Add
ActiveChart.SeriesCollection(1).Trendlines(1).Select
Selection.DisplayEquation = True
Selection.DisplayRSquared = True
sh.Select
Range("F1").Select
ActiveCell.FormulaR1C1 = "Module sécant Mpa"
Range("G1").Select
ActiveCell.FormulaR1C1 = "=SLOPE(R[6]C[-4]:R[5000]C[-4],R[6]C[-2]:R[5000]C[-2])"
With Sheets("MODULE-SECANT")
DerniereLigne = .Range("A65536").End(xlUp).Row + 1
End With
MS.Range("A" & DerniereLigne).Value = sh.Cells(1, 7).Value
End If
Next sh
End Sub
Le problème est ici :
ActiveChart.SeriesCollection(1).XValues = "='" & sh.Name & "'!$E$7:$E$DL"
ActiveChart.SeriesCollection(1).Values = "='" & sh.Name & "'!$C$7:$C$'DL'"
Il ne comprend pas DL comme une valeur, or elle s'affiche dans ma case H1, comme une valeur.
En vous remerciant par avance
Rémi