yod6666
Messages postés37Date d'inscriptionvendredi 17 mars 2006StatutMembreDernière intervention 5 avril 2006
-
27 mars 2006 à 14:51
yod6666
Messages postés37Date d'inscriptionvendredi 17 mars 2006StatutMembreDernière intervention 5 avril 2006
-
28 mars 2006 à 09:28
Bonjour à tous,
Je recherche le moyen d'inserer par l'intermédiaire d'une boucle, des courbes avec valeurs,noms et onglet variables.
Ma partie AddNewSeries ne fonctionne pas, il me parle d'objet je sais pas quoi, bref !!!! je bloque A l'aide !!!!!!!!!
Sub tri()
Application.ScreenUpdating = False
ActiveSheet.Name = "Tab_main"
Charts.Add
Worksheets(1).Activate
TotalCol = ActiveSheet.UsedRange.Columns.Count
For TotalCol = TotalCol To 2 Step -1
Call copi_coll
Call AddNewSeries
Next TotalCol
End Sub
Sub copi_coll()
Selection.AutoFilter Field:=2, Criteria1:="<>"
Range("A1:B1999").Select
Selection.Copy
Range("E1:F1999").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=True, Transpose:=False
Range("A2000", [B2000].End(xlDown)).Select
Selection.Copy
Range("E:F").SpecialCells(xlCellTypeBlanks).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=True, Transpose:=False
Selection.AutoFilter Field:=2
ActiveSheet.Name = [B1]
Columns("A:D").Select
Selection.Delete Shift:=xlToLeft
End Sub
Sub AddNewSeries()
DernierOnglet = ActiveSheet.Name
With ActiveChart.SeriesCollection.NewSeries
.Name = DernierOnglet
.Values = Sheets(DernierOnglet).Range("A1", [A1].End(xlDown))
.XValues = Sheets(DernierOnglet).Range("B1", [B1].End(xlDown))
End With
End Sub
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 27 mars 2006 à 15:10
Salut,
Essaie ceci
Sub AddNewSeries()
Dim MonGraph As Chart
Set MonGraph = ActiveWorkbook.Charts.Add
DernierOnglet = ActiveSheet.Name
With ActiveChart.SeriesCollection.NewSeries
.Name = DernierOnglet
.Values = Sheets(DernierOnglet).Range("A1", [A1].End(xlDown))
.XValues = Sheets(DernierOnglet).Range("B1", [B1].End(xlDown))
End With
End Sub
@+, Julien Pensez: Moteur de Recherche, Réponse Acceptée
yod6666
Messages postés37Date d'inscriptionvendredi 17 mars 2006StatutMembreDernière intervention 5 avril 2006 27 mars 2006 à 15:59
J'ai eu des probèmes au niveau de Range du coup j'ai fais avec une variable. Mais le problème reste sur le type de graphe (nuage de point) et je n'arrive pas à l'avoir que sur un graphe .
Sub AddNewSeries()
DernierOnglet = ActiveSheet.Name
Dim r1 As Range, r2 As Range, MaPlage As Range
Set r1 = Range("A2", [A2].End(xlDown))
Set r2 = Range("B2", [B2].End(xlDown))
Dim MonGraph As Chart
Set MonGraph = ActiveWorkbook.Charts.Add
With MonGraph.SeriesCollection.NewSeries
.Name = DernierOnglet
.Values = Sheets(DernierOnglet).Range("r1")
.XValues = Sheets(DernierOnglet).Range("r2")
End With
End Sub
yod6666
Messages postés37Date d'inscriptionvendredi 17 mars 2006StatutMembreDernière intervention 5 avril 2006 27 mars 2006 à 17:00
ok j'ai réussi pour le type mais j'ai toujour le pb de courbe , car à chaque boucle il me rajoute un nouveau graphique sur un nouveau onglet et moi je voudrai un graphique sur un onglet avec toute les courbes dedans
yod6666
Messages postés37Date d'inscriptionvendredi 17 mars 2006StatutMembreDernière intervention 5 avril 2006 27 mars 2006 à 17:23
ca marche si j'intègre direct dans ma boucle mais quand il attaque la boucle suivante il me dit
Impossible de définir la proprièté XVALUES de la class série
??????????????????????
Vous n’avez pas trouvé la réponse que vous recherchez ?
DernierOnglet = ActiveSheet.Name
ActiveSheet.UsedRange.Select
Dim sel1 As Range, sel2 As Range
Set sel1 = Range("A2", [A2].End(xlDown))
Set sel2 = Range("B2", [B2].End(xlDown))
With ActiveWorkbook.Worksheets(1)
Set NouvSerie = MonGraph.SeriesCollection.NewSeries
NouvSerie.Name = DernierOnglet
NouvSerie.Values = sel2
NouvSerie.XValues = sel1
MonGraph.ChartType = xlXYScatterSmoothNoMarkers
End With
yod6666
Messages postés37Date d'inscriptionvendredi 17 mars 2006StatutMembreDernière intervention 5 avril 2006 27 mars 2006 à 15:25
Je pense avoir avoir trouver la solution mais je voudrais l'avoir en nuage de point ou lui indiquer ?
Sub AddNewSeries()
DernierOnglet = ActiveSheet.Name
Charts(1).Activate
With ActiveChart.SeriesCollection.NewSeries
.Name = DernierOnglet
.Values = Sheets(DernierOnglet).Range("A:A")
.XValues = Sheets(DernierOnglet).Range("B:B")
End With
End Sub
yod6666
Messages postés37Date d'inscriptionvendredi 17 mars 2006StatutMembreDernière intervention 5 avril 2006 27 mars 2006 à 15:28
Je pense avoir avoir trouver la solution mais je voudrais l'avoir en nuage de point ou lui indiquer ?
Sub AddNewSeries()
DernierOnglet = ActiveSheet.Name
Charts(1).Activate
With ActiveChart.SeriesCollection.NewSeries
.Name = DernierOnglet
.Values = Sheets(DernierOnglet).Range("A:A")
.XValues = Sheets(DernierOnglet).Range("B:B")
End With
End Sub
yod6666
Messages postés37Date d'inscriptionvendredi 17 mars 2006StatutMembreDernière intervention 5 avril 2006 27 mars 2006 à 15:30
Je pense avoir avoir trouver la solution mais je voudrais l'avoir en nuage de point ou lui indiquer ?
Sub AddNewSeries()
DernierOnglet = ActiveSheet.Name
Charts(1).Activate
With ActiveChart.SeriesCollection.NewSeries
.Name = DernierOnglet
.Values = Sheets(DernierOnglet).Range("A:A")
.XValues = Sheets(DernierOnglet).Range("B:B")
End With
End Sub
yod6666
Messages postés37Date d'inscriptionvendredi 17 mars 2006StatutMembreDernière intervention 5 avril 2006 27 mars 2006 à 15:38
Je pense avoir avoir trouver la solution mais je voudrais l'avoir en nuage de point ou lui indiquer ?
Sub AddNewSeries()
DernierOnglet = ActiveSheet.Name
Charts(1).Activate
With ActiveChart.SeriesCollection.NewSeries
.Name = DernierOnglet
.Values = Sheets(DernierOnglet).Range("A:A")
.XValues = Sheets(DernierOnglet).Range("B:B")
End With
End Sub
yod6666
Messages postés37Date d'inscriptionvendredi 17 mars 2006StatutMembreDernière intervention 5 avril 2006 27 mars 2006 à 17:16
Il bloque ici : erreur : objet requis
With MonGraph.SeriesCollection.NewSeries
codes :
Sub AddNewSeries()
DernierOnglet = ActiveSheet.Name
Dim r1 As Range, r2 As Range
Set r1 = Range("A2", [A2].End(xlDown))
Set r2 = Range("B2", [B2].End(xlDown))
With MonGraph.SeriesCollection.NewSeries
.Name = DernierOnglet
.Values = Sheets(DernierOnglet).Range("r1")
.XValues = Sheets(DernierOnglet).Range("r2")
MonGraph.ChartType = xlXYScatterSmoothNoMarkers
End With
End Sub