Herbers Excel-Forum - das Archiv
Verknüpfung Excel - Powerpoint - Pfad ändern
Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Betrifft: Verknüpfung Excel - Powerpoint - Pfad ändern
von: Manuel
Geschrieben am: 15.12.2006 23:37:20
Hallo allerseits,
in einer Excel-Datei habe ich in zwei Arbeitsmappen zehn Diagramme angelegt, die direkt mit Powerpoint verknüpft sind. Die Aktualisierung der Diagramme in Powerpoint bei Änderungen in Excel funktioniert problemlos.
Ich stehe nun vor der Notwendigkeit, den Namen der Excel-Datei regelmäßig zu ändern. Wie gelingt es, dass die Verknüpfungen weiterhin funktionieren? Ist es möglich die Pfade zu ändern, ohne die Diagramme neu einzufügen?
Den Weg über Verknüpfungen - Quelle ändern war leider erfolglos, da dort nur der Name der Datei, jedoch nicht das jeweils anzuzeigende Diagramm ausgewählt werden kann.
Schöne Grüße
Manuel
Betrifft: AW: Verknüpfung Excel - Powerpoint - Pfad ändern
von: fcs
Geschrieben am: 16.12.2006 06:03:17
Hallo Manuel,
das kannst du in PowerPoint mit einem Makro machen. Das folgende Makro klappert alle Objekte in der Präsentation ab und bei Objekten mit einer Verknüpfung nach Excel wird eine Inputbox angezeigt mit dem aktuellen Link. Diesen kannst du ändern.
Man kann das Ganze jetzt natürlich verfeinern und die erforderlichen Ersetzungen für die verschiedenen Fälle durch entsprechende Textoperationen automatisieren.
Gruss
Franz
Sub VerknuepfungenAendern()
Dim Praes As Presentation, Blatt As Slide, Bild As Shape
Set Praes = ActivePresentation
For Each Blatt In Praes.Slides
For Each Bild In Blatt.Shapes
If Bild.Type = msoLinkedOLEObject Then
If InStr(1, Bild.OLEFormat.ProgID, "Excel.Chart") > 0 Then
'Diagramm in eigenem Register
'C:\TEST\MAPPE10.XLS!Diagramm1
NeuerPfad = InputBox("Neue Verknüpfung", , Bild.LinkFormat.SourceFullName)
If NeuerPfad <> "" Then
Bild.LinkFormat.SourceFullName = NeuerPfad
End If
End If
If InStr(Bild.OLEFormat.ProgID, "Excel.Sheet") > 0 Then
If InStr(1, a, "[") > 0 Then
'Diagramm eingebettet in Tabelle
'C:\TEST\MAPPE2.XLS!Tabelle1![MAPPE2.xls]Tabelle1 Diagramm 1
NeuerPfad = InputBox("Neue Verknüpfung", , Bild.LinkFormat.SourceFullName)
Else
'Tabellenbereich
'C:\TEST\MAPPE10.XLS!Tabelle1!Z3S1:Z7S3
NeuerPfad = InputBox("Neue Verknüpfung", , Bild.LinkFormat.SourceFullName)
End If
If NeuerPfad <> "" Then
Bild.LinkFormat.SourceFullName = NeuerPfad
End If
End If
End If
Next
Next
End Sub

 |
Betrifft: AW: Verknüpfung Excel - Powerpoint - Korrektur
von: fcs
Geschrieben am: 16.12.2006 06:08:40
Hallo Manuel,
ich hatte eine Zeile leider nicht wieder zurückgeändert.
ersetze Zeile
If InStr(1, a, "[") > 0 Then
durch
If InStr(1, Bild.LinkFormat.SourceFullName, "[") > 0 Then
Gruss
Franz
Betrifft: AW: Verknüpfung Excel - Powerpoint - Pfad ändern
von: Manuel
Geschrieben am: 19.12.2006 22:49:44
Hallo Franz,
vielen Dank für Deinen Tip!
Das Makro funktioniert sehr gut und hat mein Problem allumfassend gelöst.
Schöne Grüße
Manuel