XL 2013 positionnement de plusieurs graphique dans une plage de données sur des lignes différente

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Lionel7918e

XLDnaute Nouveau
Bonjour David,

je me suis inscrit sur ce site parce que je bloque sur une macro je cherche a positionner plusieurs graphique sur une même plage de donnée mais sur des ligne différente mais sa bloque pourrait tu m'aider ? voici monde :

Dim d As Double, a As Double, j As Double

d = ActiveWorkbook.Worksheets("Feuil1").Range("c1048576").End(xlUp).Row ' derniere cellule non vide de la colonne c

j = 3
While j <= d

Application.ScreenUpdating = False
Application.DisplayAlerts = False
'Range ("B" & v & ":R" & z)
'Range("B2:r2,b5:r6")
Charts.Add
ActiveChart.ChartType = xlColumnClustered
ActiveChart.SetSourceData Source:=Sheets("Feuil1").Range("B" & j & ":R" & j + 1), PlotBy _
:=xlRows
ActiveChart.ChartType = xlLine
' ActiveChart.Location Where:=xlLocationAsNewSheet 'Si tu veux le graphique sur une feuille Graphique
ActiveChart.Location Where:=xlLocationAsObject, Name:="Feuil1" '* "Feuil1" = 6 caractères. Sur la feuille

With ActiveChart 'Pour le nom
Graph1 = Right(.Name, Len(.Name) - 6) '* 6 caractères
End With

With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = Range("$a" & j)
.Axes(xlCategory, xlPrimary).HasTitle = False
.Axes(xlValue, xlPrimary).HasTitle = False
End With

Dim xRg As Range
Dim xChart As ChartObject



Set xRg = Range("S" & j & ":X" & j + 1)
Set xChart = ActiveSheet.ChartObjects(Range("$a" & j))
With xChart
.Top = xRg(Range("$a" & j)).Top
.Left = xRg(Range("$a" & j)).Left
.Width = xRg.Width
.Height = xRg.Height


End With


j = j + 2
Wend



End Sub
 

Pièces jointes

Re,

Non mais ce que je veux dire c'est que dans le code ici on appelle la feuille "Feuil1", sauf que dans le document que tu nous as transmis le code appelle une autre feuille que ça (qui n'existe pas dans le fichier en question). Du coup forcément ça ne fonctionne pas.

Qu'est ce qui ne te va pas ?

Bonne continuation
 
Re,

Non mais ce que je veux dire c'est que dans le code ici on appelle la feuille "Feuil1", sauf que dans le document que tu nous as transmis le code appelle une autre feuille que ça (qui n'existe pas dans le fichier en question). Du coup forcément ça ne fonctionne pas.

Qu'est ce qui ne te va pas ?

Bonne continuation
Oui je vois ce que tu veut dire je travaillais sur un fichier en entreprise avec des données confidentielles donc j'ai le copier copier collé en changent les donnée mais en gardant le même forme du tableau...

Bref mon problème c'est que je veut positionner plusieurs graphique dans la plage de S:X sur des ligne différente, c'est des graphique en dessous de l'autre j'ai essayer de créer une variable dans le positionnement mais excel le refuse
 
j'ai mit en pièce jointe l'endroit qui me bloque pour le positionnement pour le graphique 1 sa fonctionne mais pour le graphique 2 sa va l'empiler sur le premier graphique. j'ai également encadrer en rouge sur l'endroit ou je veut qu'appairraisse mon deuxième graphique. j'ai essaye de creer une boucle avec for disant :
Dim xRg As Range
Dim xChart As ChartObject
Dim w As Double
For w = 1 To 60

Set xRg = Range("S" & j & ":X" & j + 1)
Set xChart = ActiveSheet.ChartObjects(w)
With xChart
.Top = xRg(w).Top
.Left = xRg(w).Left
.Width = xRg.Width
.Height = xRg.Height


End With
Next
end sub
mais sa ne fonctione toujours pas
 

Pièces jointes

  • Capture.PNG
    Capture.PNG
    49.9 KB · Affichages: 16
  • solu.xlsm
    solu.xlsm
    22.2 KB · Affichages: 3
Dans ta boucle que tu me donnes ici tu insères une variable j pour te décaler dans tes ranges, sauf que tu ne boucles pas ce j, du coup forcément tout va s'empiler.

Je n'ai pas tellement le temps de regarder plus loin, je te redis demain si j'ai un peu plus de temps, mais regarde du coté de variables telles que ce j qui ne seraient pas bien utilisées.

Bonne continuation
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
467
Réponses
0
Affichages
379
Réponses
3
Affichages
519
Réponses
2
Affichages
1 K
Retour