XL 2016 Vba plage variable sous conditions pour tracer des graphiques

remex32

XLDnaute Nouveau
Bonjour,
Je souhaiterais trouver une fonction qui sur le graphique actif change la plage en fonction d'une condition qui est en gros : "à chaque fois que le caractère "ù" est selectionné, prendre la plage si dessous pour le graphique jusqu'à une case vide et ainsi de suite. Je vous met en PJ mon fichier est mon code pour que vous compreniez mieux, merci d'avance.

Sub Macro1()
Dim x As Integer
Dim nbcourbe As Integer
Dim ù As String
nbcourbe = 0
x = 1
ù = "ù"
Sheets("Feuil1").Select
Range("A1").Select
Do While nbcourbe < 124
Do While Not ActiveCell.Value = ù
ActiveCell.Offset(1, 0).Select
Loop
ActiveCell.Offset(1, 1).Select
Do While Not IsEmpty(ActiveCell)
Sheets("Graphique1").Select
ActiveChart.SeriesCollection.NewSeries
ActiveChart.FullSeriesCollection(x).XValues = "=Feuil1!$B5:$B9"
ActiveChart.FullSeriesCollection(x).Values = "=Feuil1!$C5:$C9"
x = x + 1
Sheets("Feuil1").Select
ActiveCell.Offset(1, 0).Select
Loop
ActiveCell.Offset(1, -1).Select
nbcourbe = nbcourbe + 1
Loop
End Sub
 

Pièces jointes

  • Classeur2.xlsm
    20.6 KB · Affichages: 7

remex32

XLDnaute Nouveau
Re bonjour et oui me revoilà ... lors de l'exécution de votre prgm j'obtiens belle est bien mes courbes attendu sur mon graphique mais l'axes des abscisses est faussé avec un décalage que je ne sais pas expliqué. Avez vous une idée de la cause ? Par avance, merci.
 

remex32

XLDnaute Nouveau
La macro utilisée est la 1ere que vous m'aviez donné :

Sub Macro1()
Dim Cel As Range, RDon As Range, Ser As Series
For Each Cel In Feuil1.Columns(1).SpecialCells(xlCellTypeConstants, 2)
If Cel.Value = "ù" Then
Set RDon = Cel.CurrentRegion
Set Ser = Graphique1.SeriesCollection.NewSeries
Ser.XValues = "=" & RDon(2, 2).Resize(RDon.Rows.Count - 1).Address(External:=True)
Ser.Values = "=" & RDon(2, 3).Resize(RDon.Rows.Count - 1).Address(External:=True)
End If
Next Cel
End Sub
 

Dranreb

XLDnaute Barbatruc
Dans le classeur de départ il n'y avait rien d'autre en colonne A que ces valeurs en têtes de paquet dont il fallait tracer les "ù", et chaque paquet était toujours suivi d'une ligne vide. Là les CurrentRegion s'étendent au delà.
 

Discussions similaires

Réponses
5
Affichages
268
Haut Bas