Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Diagramm per Makro als Grafik in PowerPoint einf.

Forumthread: 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
Anzeige

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

Anzeige
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

;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Diagramm per Makro als Grafik in PowerPoint einfügen


Schritt-für-Schritt-Anleitung

Um ein Diagramm aus Excel in PowerPoint als Grafik einzufügen, kannst du ein Makro verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Excel-Makro vorbereiten: Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Neues Makro erstellen: Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.
  3. Code einfügen: Kopiere den folgenden VBA-Code in das Modul:

    Sub Exportmakro()
       Dim PP2000 As PowerPoint.Application
       Dim folie As Byte, ordner As String
       On Error GoTo Fehler
       Set PP2000 = GetObject(, "Powerpoint.Application")
       ordner = ActiveWorkbook.Path & "\test.ppt"
       folie = 1
       Windows(ActiveWorkbook.Name).Activate
       ActiveSheet.ChartObjects(1).Activate
       ActiveChart.ChartArea.Select
       ActiveChart.ChartObjects.CopyPicture
       With PP2000
           .Visible = True
           .Presentations.Open Filename:=ordner, ReadOnly:=msoFalse
           .ActivePresentation.Slides(folie).Select
           .ActiveWindow.View.Paste
           With .ActiveWindow.Selection.ShapeRange
               .Left = 56.62
               .Top = 56.62
               .Width = 588.62
               .Height = 368.38
           End With
       End With
       Set PP2000 = Nothing
       Exit Sub
    Fehler:
       Set PP2000 = CreateObject("Powerpoint.Application")
       Resume Next
    End Sub
  4. Makro ausführen: Schließe den VBA-Editor und führe das Makro aus, um das Diagramm in die PowerPoint-Präsentation einzufügen.

Häufige Fehler und Lösungen

  • Makro bricht ab: Wenn das Makro bei ActiveWindow.View.Paste abbricht, stelle sicher, dass PowerPoint geöffnet ist und die Präsentation korrekt geladen wurde.
  • Diagramm nicht gefunden: Achte darauf, dass das Diagramm in Excel tatsächlich existiert und aktiv ist. Überprüfe die Diagrammnummer.
  • Verweis auf die PowerPoint-Bibliothek: Stelle sicher, dass du im VBA-Editor unter Extras > Verweise einen Verweis auf die PowerPoint-Bibliothek gesetzt hast.

Alternative Methoden

Neben der Verwendung von Makros kannst du auch manuell ein Diagramm in PowerPoint erstellen:

  1. Diagramm kopieren: Klicke in Excel auf das Diagramm, gehe zu Start > Kopieren.
  2. In PowerPoint einfügen: Wechsel zu deiner PowerPoint-Präsentation und gehe zu Start > Einfügen. Wähle Einfügen als Bild, um das Diagramm als Grafik einzufügen.

Diese Methode ist besonders nützlich, wenn du nur gelegentlich Diagramme in PowerPoint verwenden möchtest.


Praktische Beispiele

Hier sind einige praktische Beispiele für das Einfügen von Diagrammen in PowerPoint:

  1. Ein Diagramm erstellen: Erstelle zuerst dein gewünschtes Diagramm in Excel, z. B. ein Säulendiagramm oder ein Liniendiagramm.
  2. Makro verwenden: Nutze das oben beschriebene Makro, um das Diagramm als Grafik in PowerPoint einzufügen.
  3. Diagramme anpassen: Nach dem Einfügen kannst du die Größe und Position der Grafik in PowerPoint anpassen.

Tipps für Profis

  • Makros automatisieren: Du kannst das Makro so anpassen, dass es mehrere Diagramme nacheinander in PowerPoint einfügt.
  • Grafiken anpassen: Nutze VBA, um die Eigenschaften der eingefügten Grafiken direkt im Code zu ändern, z. B. die Größe oder die Position.
  • Makro aufzeichnen: Wenn du oft ähnliche Aufgaben durchführst, kannst du auch die Funktion Makro aufzeichnen in PowerPoint verwenden, um den Prozess zu automatisieren.

FAQ: Häufige Fragen

1. Wie kann ich mehrere Diagramme gleichzeitig einfügen?
Du kannst das Makro so erweitern, dass es eine Schleife enthält, um alle Diagramme in einem Arbeitsblatt zu durchlaufen und einzufügen.

2. Was muss ich tun, wenn PowerPoint nicht öffnet?
Überprüfe, ob PowerPoint korrekt installiert ist und ob du die richtigen Berechtigungen hast, um es über VBA zu steuern. Stelle sicher, dass du den richtigen Verweis auf die PowerPoint-Bibliothek gesetzt hast.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige