Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
280to284
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
280to284
280to284
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Diagramm per Makro als Grafik in PowerPoint einf.

Diagramm per Makro als Grafik in PowerPoint einf.
16.07.2003 09:39:37
Alexander
Hallo Zusammen,
seit einem Tag versuche ich verzweifelt, mit einem Excel-Makro ein Diagramm einer Excel-Mappe auf die 2. Folie einer vorhandenen PowerPoint Präsentation als Bild einzufügen. Aber beim Einfügen scheitert mein Versuch.
Mein Excel-Code:

Sub PP()
Dim ppApp As Object
Set ppApp = CreateObject("Powerpoint.Application")
Sheets("Tabelle1").Select
ActiveSheet.ChartObjects("Diagramm 1").Activate
ActiveChart.ChartArea.Select
ActiveChart.ChartArea.Copy
ppApp.Visible = msoTrue
ppApp.Presentations.Open Filename:="c:\temp\test.ppt", ReadOnly:=msoFalse
ppApp.Application.ActiveWindow.View.Paste ' Hier bricht das Makro bei mir ab!!
End Sub

Bitte um Unterstützung, Danke!
Gruß
Alexander

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Diagramm per Makro als Grafik in PowerPoint einf.
16.07.2003 10:00:54
david
Hi Alexander,
hast du einen Verweis auf die Powerpoint Objekt Bibliothek im VBA Edtitor unter Extras/Verweise... gesetzt?
Versuche mich auch gerade an der Lösung dieses Problems, bin aber noch nicht weit fortgeschritten. Kannst du es posten, wenn es funkt?
Gruß
David

AW: Diagramm per Makro als Grafik in PowerPoint einf.
16.07.2003 10:22:39
Alexander
Hallo David,
habe den Verweis gesetzt, komme aber immer noch nicht weiter.
Gruß
Alexander

AW: Diagramm per Makro als Grafik in PowerPoint einf.
16.07.2003 10:40:35
david
Hallo Alexander,
das folgende Makro hab ich in der Recherche gefunden...
Es speichert allerdings noch kein Diagramm, sondern nur die ersten 7 Spalten und 10 Zeilen des Excel-sheets. Es liegt wohl daran, dass noch kein Object definiert wurde (createObjects).
Das was es macht, macht es aber gut. Im Ppt wird jeweils eine neue Seite geöffnet, einen Titel kann man auch dazu schreiben... probier einfach mal. Hab gerade selbst keine Zeit, muss das Problem aber auch irgendwann lösen...
Falls es- wie gesagt- bei dir gehen sollte, wärs nett, wenn du postest...

Sub exportDieZweite()
' Prozedur fügt Diagramme der Arbeitsmappe in eine Presentation
' ein. Ist PowerPoint noch nicht geöffnet, wird die Anwendung
' geladen und während des Ablaufes die Steuerung übergeben.
Dim PP2000 As PowerPoint.Application
Dim folie As Byte, blatt As String, ordner As String
On Error GoTo Fehler
Set PP2000 = GetObject(, "Powerpoint.Application")
On Error GoTo 0
diagramm3.Show
blatt = diagramm3.diagramm
If blatt = "" Then Exit Sub
Unload dlg_diagramm
Workbooks("probe15.7.2003.xls").Activate
ordner = ActiveWorkbook.Path
With PP2000
.Visible = True
.Activate
If .Presentations.Count = 0 Then
.Presentations.Open Filename:="C:\Users\My Documents\Probe\probe15.7.2003.ppt", ReadOnly:=msoFalse
End If
folie = .ActivePresentation.Slides.Count + 1
.ActivePresentation.Slides.Add folie, ppLayoutTitleOnly
.ActivePresentation.Slides(folie).Select
.ActiveWindow.Selection.SlideRange.Shapes("Rectangle 2").Select
.ActiveWindow.Selection.ShapeRange.TextFrame.TextRange.Select
.ActiveWindow.Selection.ShapeRange.TextFrame.TextRange.Characters(Start:=1, Length:=0).Select
With .ActiveWindow.Selection.TextRange
.Text = "Diagramm " & blatt
.Font.Size = 28
End With
.ActiveWindow.Selection.SlideRange.Shapes.AddOLEObject(Left:=120#, Top:=140#, Width:=480#, Height:=320#, Filename:="C:\Users\My Documents\Probe\probe2\probe15.7.2003.xls", Link:=msoTrue).Select
.ActiveWindow.Selection.ShapeRange.LinkFormat.AutoUpdate = ppUpdateOptionManual
.ActiveWindow.Selection.Unselect
End With
Set PP2000 = Nothing
Sheets("tabelle1").Activate
Exit Sub
Gruß
David
Fehler:
Set PP2000 = CreateObject("Powerpoint.Application")
Resume Next
End Sub


Anzeige
AW: Diagramm per Makro als Grafik in PowerPoint einf.
16.07.2003 14:20:03
Alexander
Hallo David,
bei mir funktionert der folgende Code:
'
' Exportiert die Exceldiagramme als Bild in eine PowerPoint Präsentation
'

Sub Exportmakro()
Dim PP2000 As PowerPoint.Application
Dim folie As Byte, blatt As String, ordner As String
On Error GoTo Fehler
Set PP2000 = GetObject(, "Powerpoint.Application")
' Ordner, Dateiname und Tabellenblatt der Exceldatei
ordner = ActiveWorkbook.Path
Dateiname = ActiveWorkbook.Name
Tabellenblatt = "Tabelle1"
' Ordner, Dateiname und Folie der PowerPoint-Datei
ordner_ppt = ordner
Dateiname_ppt = "\test.ppt"
folie = 1
Windows(Dateiname).Activate
Sheets(Tabellenblatt).Select
' Diagrammnummer des zu kopierenden Charts ermitteln und Chart aktivieren
Diagrammnummer = ActiveSheet.ChartObjects.Count
ActiveSheet.ChartObjects(Diagrammnummer).Activate
ActiveChart.ChartArea.Select
ActiveChart.ChartObjects.CopyPicture ' als Bild kopieren
With PP2000
.Visible = True
.Activate
.Presentations.Open Filename:=ordner_ppt & Dateiname_ppt, ReadOnly:=msoFalse
.ActivePresentation.Slides(folie).Select
.ActiveWindow.Selection.SlideRange.Shapes("Rectangle 2").Select
PP2000.ActiveWindow.View.Paste
' Legt Größe und Position der Grafik fest
With PP2000.ActiveWindow.Selection.ShapeRange
.Left = 56.62
.Top = 56.62
.Width = 588.62
.Height = 368.38
End With
End With
Set PP2000 = Nothing
Windows(Dateiname).Activate
Sheets(Tabellenblatt).Select
Exit Sub
Fehler:
Set PP2000 = CreateObject("Powerpoint.Application")
Resume Next
End Sub

Gruß Alexander

Anzeige
AW: Diagramm per Makro als Grafik in PowerPoint einf.
16.07.2003 16:29:49
david
Hi Alexander,
hab eben erst wieder reingeschaut... funktioniert auch bei mir..
dann besten Dank
David

94 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige