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

Forumthread: excelbereich in powerpoint kopieren!!!

excelbereich in powerpoint kopieren!!!
21.05.2007 15:46:30
matze07
hallo,
ich habe ein dringendes anliegen. ich möchte einen bestimmten bereich aus einem excel sheet in eine powerpoint-folie kopieren. die powerpoint-präsentation existiert bereits und besitzt aus testzwecken bisher erst 3 folien. nun das problem...
lasse ich diese präsentation ungeändert und kopiere meinen bereich z.b. in folie 2, dann klappt alles wunderbar. sobald ich aber nur eine einzige folie hinzufüge und alles andere ungändert lasse, kommt in folgender zeile des codes ein automatisierungsfehler...
ppApp.ActiveWindow.View.PasteSpecial DataType:=ppPasteDefault, link:=msoTrue
bitte um hilfe, falls jmd weiter weiss... danke
matze

Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: excelbereich in powerpoint kopieren!!!
21.05.2007 16:27:41
martin
Hallo Matze,
es fällt mir schwer Dein Problem nachzuvollziehen.
Deswegen kann ich Dir nur folgende Lösung anbieten, die zwar technisch nicht schön ist, aber sehr zuverlässig funktioniert:
- Screenshot machen (Taste "Druck" bzw. "Print" auf der Tastatur)
- In einem Grafikprogramm "speichern unter..." bzw. "save as..."
- als *.jpg speichern
- aus powerpoint die Grafik einfügen
Ausserdem empfehle ich Dir auf Powerpoint zu verzichten und Deine Präsentation in Form eines PDF zu machen.
Dadurch umgehst Du Probleme die immer wieder bei Powerpoint-Präsentationen auftauchen. Es gibt nichts peinlicheres als eine Präsentation die abschmiert. ("An dieser Stelle hätten wir jetzt die Zahlen / Grafik xy gesehen".
PDF ist da wesentlich widerstandsfähiger. Man benötigt keine viele MB schweres Microsoft Powerpoint oder MS Powerpoint Viewer. Freie PDF Viewer gibt es ab 1 MB grösse und müssen auch nicht installiert werden (Foxit PDF Reader).
PDF erstellen mit jedem schreibprogramm und dann Drucken mit Free PDF XP
http://freepdfxp.de/fpx732.htm
Hat noch viele andere Vorteile!
Grüße
Martin

Anzeige
AW: excelbereich in powerpoint kopieren!!!
21.05.2007 16:42:55
matze07
hallo martin,
danke erstmal für deine rasche antwort... dass mit der präsentation als pdf hört sich zwar gut an, jedoch habe ich hier die vorgaben, aus excel heraus, eine pp-präsentation zu generieren.
ansonsten ist das problem weiterhin, dass der vba code den kopierten bereich aus dem excel sheet nicht in die pp-folie einfügt. jedoch erst dann nicht, sobald ich meine präsentation um folien erweitere. wie erwähnt, mit der bereits bestehenden präsentation (inkl. 3 folien) klappt es wunderbar, erst wenn ich weitere folien zufüge und den code erneut ausführe, kommt ein automatisierungsfehler.
gruss,
matze

Anzeige
AW: excelbereich in powerpoint kopieren!!!
21.05.2007 22:18:43
Herbert
hallo Matze,
da mußt du schon den ges. Code zeigen !
Grüße Herbert

AW: excelbereich in powerpoint kopieren!!!
21.05.2007 23:44:08
matze07
hallo herbert,
der code is der folgende und ich habe ihn praktisch über einen anderen thread gefunden...

Private Sub cmdPraesentation_erstellen_Click()
Dim ppApp As Object
Dim ppFile As Object
Dim ppPres As String
'Dateiname
ppPres = "H:\Zentraltool\Präsentation1.ppt"
'Object referenzieren
Set ppApp = CreateObject("Powerpoint.Application")
'Bereich kopieren
Worksheets("K1").Range("A1:M31").Copy
'Diagramm kopieren
'ActiveSheet.ChartObjects("Diagramm 3").Copy
'Object initialisieren
ppApp.Visible = msoTrue
'PPT öffnen
Set ppFile = ppApp.Presentations.Open(ppPres)
'Folie auswählen
ppApp.ActivePresentation.Slides(2).Select
'Bereich einfügen und OLE Verknüpfung herstellen = Link
ppApp.ActiveWindow.View.PasteSpecial DataType:=ppPasteDefault, link:=msoTrue
'Eingefügte Tabelle skalieren
With ppApp.ActiveWindow.Selection.ShapeRange
'Oberer Rand 1 cm unter Standardtitel
.Top = 150
'Linker Rand 1.5 cm von linkem Folienrand
.Left = 35
'Eingefügte Tabelle auf Links und rechts 1,5 cm Rand skalieren
.Width = 650
'Bei Bedarf Höhe noch einstellen
'Hier ist jedoch zu beachten, dass das Object skaliert wird !!!
'Die Breite verändert sich dann
'.Height = 300
End With
End Sub


mein problem ist jetzt, dass bei PasteSpecial ein automatisierungsfehler kommt und der markierte bereich net in die folie eingefügt wird. hoffe dass es jetzt ein wenig verständlicher ist... danke für die hilfe
gruss,
matze

Anzeige
AW: excelbereich in powerpoint kopieren!!!
22.05.2007 23:25:04
Herbert
probiers einmal so:

Sub cmdPraesentation_erstellen_Click()
Dim ppApp As Object, ppFile As Object, ppPres As String
Worksheets("K1").Range("A1:M25").Copy
Application.ScreenUpdating = False
ppPres = "H:\Zentraltool\Präsentation1.ppt"
Set ppApp = CreateObject("Powerpoint.Application")
ppApp.Visible = msoTrue
Set ppFile = ppApp.Presentations.Open(ppPres)
With ppApp.Presentations("Präsentation2.ppt").Slides(2)
.Shapes.Paste
.Shapes(1).Left = 20
.Shapes(1).Top = 20
.Select
End With
Application.ScreenUpdating = True
Application.CutCopyMode = False
Set ppApp = Nothing
Set ppFile = Nothing
End Sub


gruß Herbert

Anzeige
AW: excelbereich in powerpoint kopieren!!!
23.05.2007 09:17:20
matze07
hi herbert,
danke für deine mühe, jedoch kommt auch in deinem beispiel dieser automatisierungsfehler, sobald der kopierte bereich in die pp-präsentation eingefügt werden soll...
mittlerweile hab ich dieses problem jedoch umgangen, indem ich mit verknüpfungen arbeite und diese dann aus excel heraus aktualisiere. klappt auch einwandfrei...
gruss,
matze

Anzeige
AW: excelbereich in powerpoint kopieren!!!
23.05.2007 10:18:18
Herbert
das dürfte dann nicht mehr am Code liegen !
gruß Herbert
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Excel-Bereich in PowerPoint kopieren


Schritt-für-Schritt-Anleitung

Um einen bestimmten Bereich aus einer Excel-Tabelle in eine PowerPoint-Präsentation einzufügen, kannst Du die folgenden Schritte befolgen:

  1. Bereich in Excel kopieren: Markiere den gewünschten Bereich in Deiner Excel-Tabelle und kopiere ihn (Strg + C).
  2. PowerPoint öffnen: Starte PowerPoint und öffne die Präsentation, in die Du den Excel-Bereich einfügen möchtest.
  3. Folie auswählen: Wähle die Folie aus, auf der der Excel-Bereich eingefügt werden soll.
  4. Einfügen: Drücke Strg + V, um den kopierten Bereich einzufügen. Alternativ kannst Du auch "Einfügen" -> "Inhalte einfügen" -> "Verknüpfte Tabelle" auswählen, um eine Verknüpfung zu erstellen.

Wenn Du diese Schritte befolgst und dabei sicherstellst, dass die Folienanzahl korrekt ist, solltest Du keine Probleme haben.


Häufige Fehler und Lösungen

  1. Automatisierungsfehler: Wenn Du beim Einfügen einen Automatisierungsfehler erhältst, könnte das an einer falschen Folienauswahl oder einem Problem mit dem VBA-Code liegen. Achte darauf, dass die Folie existiert, bevor Du den Code ausführst.

  2. Verknüpfungen aktualisieren: Wenn Du mit Verknüpfungen arbeitest, stelle sicher, dass die Pfade zu Deinen Excel-Dateien korrekt sind. Manchmal können Pfadänderungen zu Problemen führen.

  3. Falsche Reihenfolge: Achte darauf, dass Du die Folie auswählst, bevor Du das Einfügen ausführst. Wenn Du die Folie erst nach dem Kopieren auswählst, kann es zu Fehlern kommen.


Alternative Methoden

Falls Du Probleme beim direkten Einfügen aus Excel in PowerPoint hast, kannst Du folgende alternative Methoden verwenden:

  • Screenshot-Methode: Mache einen Screenshot des Excel-Bereichs (Taste "Druck"). Füge den Screenshot in PowerPoint als Bild ein. So umgehst Du mögliche Automatisierungsfehler.

  • PDF-Export: Exportiere Deine Excel-Daten als PDF und füge das PDF in die PowerPoint-Präsentation ein. Dies kann insbesondere nützlich sein, wenn Du keine Interaktivität benötigst.


Praktische Beispiele

Ein einfaches Beispiel für den VBA-Code, um einen Excel-Bereich in PowerPoint einzufügen:

Sub ExcelInPowerPointEinfügen()
    Dim ppApp As Object
    Dim ppFile As Object
    Dim ppPres As String
    ppPres = "C:\DeinPfad\Präsentation1.ppt"

    Set ppApp = CreateObject("Powerpoint.Application")
    ppApp.Visible = msoTrue
    Set ppFile = ppApp.Presentations.Open(ppPres)

    Worksheets("Tabelle1").Range("A1:B10").Copy
    ppApp.ActivePresentation.Slides(1).Shapes.Paste
End Sub

Dieser Code kopiert die Daten aus einem Excel-Blatt und fügt sie in die erste Folie der PowerPoint-Präsentation ein.


Tipps für Profis

  • Verknüpfungen nutzen: Verwende PasteSpecial mit der Option link:=msoTrue, um eine Verknüpfung zu erstellen. Das ermöglicht Dir, die Excel-Daten in PowerPoint zu aktualisieren, ohne sie erneut kopieren zu müssen.

  • VBA-Fehlerbehebung: Wenn Du mit VBA arbeitest und auf Fehler stößt, nutze Application.ScreenUpdating = False, um die Bildschirmaktualisierung zu deaktivieren. Das kann helfen, die Performance zu verbessern und Fehler zu vermeiden.

  • Mehrere Folien kopieren: Wenn Du mehrere Folien kopieren möchtest, kannst Du eine Schleife im VBA-Code verwenden. Dies spart Zeit und Aufwand.


FAQ: Häufige Fragen

1. Wie kann ich eine bestehende Excel-Tabelle in PowerPoint einfügen?
Du kannst den gewünschten Bereich in Excel kopieren und dann in PowerPoint einfügen. Alternativ kannst Du den Bereich als Bild oder PDF exportieren.

2. Was tun, wenn der Automatisierungsfehler weiterhin auftritt?
Überprüfe Deinen VBA-Code und stelle sicher, dass alle Folien existieren, bevor Du das Einfügen durchführst. Es kann auch hilfreich sein, PowerPoint und Excel neu zu starten.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige