Я работаю над сценарием Excel, который создает слайды PowerPoint.
На слайде PowerPoint я хочу показать легенду диаграммы, но не остальную часть диаграммы.
Вот выдержка из моего кода:
With Sheets("data")
Set bereich = Range(.Cells(Daty + 1, 3), .Cells(Daty + 2 + UBound(SubCategories), Datx + UBound(anzahl, 1)))
Set dia = .ChartObjects.Add(10, 800, 650, 400)
.ChartObjects(dia.Name).Activate
dia.Name = "ideaspersubcatstatus"
.Shapes(dia.Name).Left = Range(.Cells(intSubCat + 3, 1), .Cells(intSubCat + 3, 1)).Left
.Shapes(dia.Name).Top = Range(.Cells(intSubCat + 3, 1), .Cells(intSubCat + 3, 1)).Top
End With
With ActiveChart
.ChartType = xlBarStacked
.SetSourceData Source:=bereich, PlotBy:=xlColumns
.HasLegend = True
.PlotArea.Interior.ColorIndex = xlNone
.Axes(xlCategory).TickLabelSpacing = 1
.ChartArea.Border.LineStyle = 0
.Axes(xlValue).MajorGridlines.Border.LineStyle = xlDot
End With
Мне нужно скопировать легенду графика в powerpoint или удалить все, кроме легенды из диаграммы, прежде чем я скопирую ее в Powerpoint.
With .Slides(9)
'copy graph from Excel
Workbooks("data.xls").Worksheets("data").ChartObjects("ideaspersubcatstatus").Copy
'paste graph into Powerpoint
.Shapes.Paste
End With
". PlotArea.Delete" не поддерживается. ".ChartObjects (1) .Legend.Copy" также не работает.