sarekhl
Goto Top

Excel-Dokument in PowerPoint-Dokument an verschiedenen Stellen in verschiedenen Ansichten einfügen (als Verknüpfung)

Hallo zusammen,

diesmal habe ich mal eine private Frage im Auftrag meiner Frau. Die soll für ihren Chef bis Montag eine PowerPoint-Präsentation (Version 2010) bearbeiten. Dabei stößt sie auf folgende Schwierigkeit, die auch ich nicht hinbekomme face-sad

Wie kann man eine Excel-Tabelle auf vier verschiedenen Folien einer PowerPoint-Präsentation so verknüpfen, dass z.B. auf:

  • Folie 1 das Blatt "Diagramm1" der Excel-Datei
  • Folie 2 das Blatt "Diagramm2" der Excel-Datei
  • Folie 3 das der Zellbereich A1:K30 des Blattes "Tabelle1" der Excel-Datei
  • Folie 4 das der Zellbereich A80:K110 des Blattes "Tabelle1" der Excel-Datei


angezeigt wird?


Danke im Voraus,
Sarek \\//_

Content-Key: 367691

Url: https://administrator.de/contentid/367691

Printed on: April 26, 2024 at 09:04 o'clock

Member: emeriks
emeriks Mar 10, 2018 updated at 17:17:30 (UTC)
Goto Top
Hi,
keine Ahnung was da geht und was nicht face-wink
Aber erste pragmatische Ansätze von mir:
Wenn es für eine einmalige Sache ist, dann, sich nicht ständig dynamisch anpassen soll
  1. Diagramme einfach als Bilder kopieren und einfügen? (Screenshot)
  2. Excel-Dokument in 4 Kopien vorhalten und einbinden? Das könnte man per VBA-Makro auch "dynamisch" halten. Beim Speichern der XLSX soll es 3 weitere Kopien von sich erstellen, oder die Diagramme als Bild exportieren, oder gleich in die Powerpoint einfügen.
  3. Im PowerPoint per VBA-Makro?

E.
Member: colinardo
Solution colinardo Mar 10, 2018 updated at 16:37:34 (UTC)
Goto Top
Servus Sarek,
das geht so:

  • Für Diagramme:
Gehe in dein Excel Dokument markiere das Diagramm und kopiere es dann in die Zwischenablage. Dann in Powerpoint STRG+V einfügen, das Diagramm wird automatisch mit der Excel-Arbeitsmappe verlinkt, aktualisieren lässt es sich in Powerpoint über das Ribbon:

screenshot

  • Für Datenbereiche:
Gehe in dein Excel und markieren den Zell-Bereich den du in Powerpoint übernehmen möchtest. Dann in Powerpoint im Ribbon auf den kleinen Pfeil unter dem Einfügen Button klicken => Inhalte einfügen

screenshot

screenshot

Fertig. Auch diese Ansichten werden verknüpft und aktualiseren sich wenn man die Verknüpfungen aktualisiert oder das Dokument erneut öffnet. Die Ansichten bleiben beim aktualisieren erhalten.

Hier ein Beispiel womit ich das ganze mal durchexerziert habe (alles aus dem selben Dokument verknüpft. Im ersten Slide ein Diagramm, im Zweiten zwei separate Datenbereiche):

screenshot

Hoffe ich konnte Dir damit helfen.

Schönes Wochenende
Grüße Uwe
Member: emeriks
emeriks Mar 10, 2018 at 17:01:57 (UTC)
Goto Top
Ich hatte einfach angenommen, dass sich die Problematik aus der Tatsache ergäbe, dass ein Excel-Dokument gleich 4x an 4 verschiedenen Stellen eingebunden werden soll.
Member: colinardo
colinardo Mar 10, 2018 updated at 17:12:42 (UTC)
Goto Top
Zitat von @emeriks:
Ich hatte einfach angenommen, dass sich die Problematik aus der Tatsache ergäbe, dass ein Excel-Dokument gleich 4x an 4 verschiedenen Stellen eingebunden werden soll.
Das ist auch ein Problem wenn man das selbe Dokument mehrfach einbindet aber nur wenn man es nicht so macht wie oben beschrieben.
Wenn man nämlich z.B. das ganze Excel-Workbook über Copy aus dem Explorer und Inhalte einfügen in Powerpoint einfügt und das mehrfach macht, und dann anschließend die einzelnen Ansichten ändert, scheint das auf den ersten Blick möglich. Das Problem ist dann aber das nach dem erneuten Öffnen und dem Aktualisieren der Verknüpfungen, alle Ansichten auf die zuletzt Gespeicherte zurückgesetzt werden.

Wenn man es wie oben macht umgeht man dieses spezielle Problem. Ich denke Sarek ist darüber gestolpert.
Member: SarekHL
SarekHL Mar 10, 2018 updated at 17:25:02 (UTC)
Goto Top
Zitat von @colinardo:

Wenn man es wie oben macht umgeht man dieses spezielle Problem. Ich denke Sarek ist darüber gestolpert.

Jein! Die Symptomatik schon, aber ich hatte es noch anders gemacht (Einfügen -> Objekt -> Aus Datei -> Verknüpfung). Danke für Deine ausführliche Beschreibung, wenn ich wieder am Schreibtisch bin, probiere ich es aus. Auf die Idee wäre ich allerdings nie gekommen. Ich wäre felsenfest der Meinung gewesen, mit STRG+V würde ich nur den aktuellen Stand des Diagramms einbinden, ohne Rückbezug zur Excel-Datei.
Member: SarekHL
SarekHL Mar 11, 2018 updated at 10:22:38 (UTC)
Goto Top
Hallo Colinardo,

soweit klappt Deine Anleitung prima, es gibt nur einen Haken: Die Verknüpfung zur Excel-Datei wird als absoluter Pfad gespeichert. Wenn ich das ganze auf einen Stick ziehe, klappt es nicht mehr, und selbst wenn ich die Verknüpfungen dort anpasse, klappt es unter Umständen an einem anderen Rechner, wo der Stick einen anderen Laufwerksbuchstaben bekommt, nicht mehr.

Bekommt man das noch irgendwie hin? Mit dem Pack&Go-Assistenten jedenfalls nicht, denn da zerstört er die Verknüpfung zu den Daten:

screenshot

Oder kann man die Datei vielleicht einbetten? Aber so, dass eben auch wieder alle drei Folien auf diese eine Datenquelle zugreifen, nicht dass jede Folie ihre eigene Tabelle hat.
Member: colinardo
colinardo Mar 11, 2018, updated at Mar 13, 2018 at 11:19:49 (UTC)
Goto Top
Zitat von @SarekHL:

Hallo Colinardo,

soweit klappt Deine Anleitung prima, es gibt nur einen Haken: Die Verknüpfung zur Excel-Datei wird als absoluter Pfad gespeichert.
Normales Verhalten.
Wenn ich das ganze auf einen Stick ziehe, klappt es nicht mehr, und selbst wenn ich die Verknüpfungen dort anpasse, klappt es unter Umständen an einem anderen Rechner, wo der Stick einen anderen Laufwerksbuchstaben bekommt, nicht mehr.
Korrekt.
Bekommt man das noch irgendwie hin?
Das kann man sich mit ein paar Zeilen VBA Skripten.

Wenn der Massa für einen seiner Jünger eine Spende herabsegeln lässt, ist er sicher bereit dir das zu scripten face-smile.

Bis dahin schwinge ich mich erst einmal wieder auf mein Surfboard face-wink.

-edit- Ich will mal nicht so sein.

Hier ein Skript das du zusammen mit deiner Präsentation (pptx) und allen anderen verknüpften Daten mit in ein Verzeichnis packst und dann benutzt um die Präsentation zu öffnen statt Doppelklick auf die Präsentation:
On Error Resume Next
Dim sld, shp, linkParts
Set fso = CreateObject("Scripting.FileSystemObject")  
Set pp = CreateObject("Powerpoint.Application")  
With pp
    .Visible = True
    .DisplayAlerts = ppAlertsNone
	For Each file In fso.GetFolder(fso.GetParentFolderName(WScript.ScriptFullName)).Files
		If LCase(fso.GetExtensionName(file.Name)) = "pptx" Then  
			With pp.Presentations.Open(file.Path)
		        For Each sld In .Slides
		            For Each shp In sld.Shapes
		                If shp.Type = 10 Then
		                    linkParts = Split(shp.LinkFormat.SourceFullName, "!", 3, vbTextCompare)  
		                    If UBound(linkParts) > 0 Then
		                    	shp.LinkFormat.SourceFullName = .Path & "\" & fso.GetfileName(linkParts(0)) & "!" & linkParts(1) & "!" & linkParts(2)  
		                    Else
		                    	shp.LinkFormat.SourceFullName = .Path & "\" & fso.GetfileName(linkParts(0))   
		                    End If
		                    shp.LinkFormat.Update
		                ElseIf shp.Type = 3 Then
		                    If shp.Chart.ChartData.IsLinked Then
		                        shp.LinkFormat.SourceFullName = .Path & "\" & fso.GetfileName(shp.LinkFormat.SourceFullName)  
		                    End If
		                    shp.LinkFormat.Update
		                End If
		            Next
		        Next
		    End With
		End If
	Next
    .DisplayAlerts = ppAlertsAll
End With