Charts "sauber" nach PPT übernehmen
13.02.2007 10:14:00
MrB
Ich habe ein kleines Problem. Ich möchte einzelne charts aus Excel nach Powerpoint exportieren. Diese charts (diagramme) sind einzelne Tabellenblätter(also keine Objekte auf einem Tabellenblatt). Bei dem Export soll er die Grafiken natürlich "vernünftig", zentriert etc. auf einer Folie in PPT einfügen. das funktioniert auch beim ersten chart sehr gut, leider in der Schleife nicht - und das ist nun mein eigentliches Problem.
Natürlich habe ich schon gegoogelt und auch Codes gefunden, die neue PPT-Präsentationen öffnen (also ohne vorher eine master.ppt o. ä. - zu erstellen) und für jede Grafik neue Folien bilden, somit das ganz dynamisch gestalten - leider funktionieren diese codes nicht bei mir. Ich weiß auch nicht, ob es an meiner Office-Version liegt, oder irgendwelchen Einstellungen.
Mein code sieht im Moment so aus:
Sub Excel_chart_an_PPT()
Dim ppApp As Object
Dim ppFile As Object
Dim ppPres As String
Set ppApp = CreateObject("Powerpoint.Application")
'erstes Diagramm/chart aus der geöffneten xls
Sheets(1).ChartObjects.CopyPicture
With ppApp
.Visible = True
.Presentations.Open Filename:="F:\SYSTEM\Master.ppt"
.ActivePresentation.Slides.Add 1, ppLayoutBlank
With .ActivePresentation.Slides(2)
.Shapes.Paste.Select
'Definition des Aussehens
With ppApp.ActiveWindow.Selection.ShapeRange
.Top = 100
.Left = 50
.Width = 720
.Height = 400
End With
End With
End With
'Schleife für den Rest
For i = 2 To Charts.Count
Sheets(i).ChartObjects.CopyPicture
With ppApp
.Visible = True
With .ActivePresentation.Slides(i + 1)
.Shapes.Paste
End With
End With
Next i
End Sub