VS2013 - Copier un Shape (composé de 2 Charts) dans un Graph pour exporter une image
Bonjour,
Dans un Worksheet, j'ai créé 2 graphiques, et je les groupe.
Je souhaite coller le shape groupé dans un gaph pour exporter l'image du Graph.
=> le but : avoir une image des 2 graphs groupés.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| Dim XL_Shape As Excel.Shape
Dim XL_Shape_Grp As Excel.Shape
Dim XL_Shape_Array As Object()
'Grouper les 2 Graphiques
ReDim XL_Shape_Array(XL_WS.Shapes.Count - 1)
For Each XL_Shape In XL_WS.Shapes
XL_Shape_Array(i) = XL_Shape.Name
i = i + 1
Next
XL_Shape_Grp = XL_WS.Shapes.Range(XL_Shape_Array).Group()
XL_Shape_Grp.Name = "Graph_Grp"
XL_Shape_Grp.Copy() |
Tout ça fonctionne, sur l'onglet, les 2 graphs sont bien groupés un seul shape.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| 'créer image
G_Image = My.Settings.Cible1 & "\Admin\" & "Graph_2.gif"
XL_Chart_Obj = XL_Charts_Obj.Add(0, 0, XL_Shape_Grp.Width, XL_Shape_Grp.Height)
XL_Chart = XL_Chart_Obj.Chart
XL_Chart.Location(Excel.XlChartLocation.xlLocationAsObject, XL_WS.Name)
With XL_Chart
.ChartArea.Select()
.Paste()
.ChartArea.Border.LineStyle = 0
On Error Resume Next
XL_Chart.Activate()
.Export(Filename:=G_Image, FilterName:="GIF")
On Error GoTo 0
End With |
Le graph est ben créé, l'image est bien générée sauf que les 2 sont blancs. :calim2: (je précise que le Graph créé et l'image enregistré sont bien à la bonne taille du shape)
je pense que le .paste dans le .ChartArea.Select() ne fonctionne pas.
Le code ne génère pas d'erreur.
Est-ce que quelqu'un sait comment coller un shape dans un ChartArea?
(je précise, ça vaut ce que ça vaut :P, que je fais cette technique sur VBA et que cela fonctionne parfaitement).
D'avance merci pour votre aide, car depuis 2j je deviens dingue :roll: