Ich weiß, ich kann dies leicht tun, indem Sie auf Datei -> Links -> automatisch aktualisieren. Aus irgendeinem Grund führt dies jedoch zu Abstürzen auf den Computern anderer Benutzer. Ich denke, das könnte ein Kompatibilitätsproblem sein, da ich am Powerpoint 2016 bin. Ich habe ungefähr 30 Diagramme, die ich über ein Makro aktualisieren möchte. Jedenfalls habe ich versucht, den folgenden VBA zu verwenden, aber ich komme am Ende mit einem Pop-up von Excel, das sagt: Microsoft Excel wartet auf eine andere Anwendung, um eine OLE-Aktion abzuschließen. Dieses Pop-up tauchte nur für 15 Minuten auf.Problem beim Aktualisieren von Excel-verknüpften Charts in Powerpoint über VBA
Hilfe wäre sehr geschätzt, da ich mit Makros nicht sehr erfahren bin.
Sub ChangeChartData()
Dim pptChart As Chart
Dim pptChartData As ChartData
Dim pptWorkbook As Object
Dim sld As Slide
Dim shp As Shape
For Each sld In ActivePresentation.Slides
For Each shp In sld.Shapes
If shp.HasChart Then
Set pptChart = shp.Chart
Set pptChartData = pptChart.ChartData
pptChartData.Activate
Set pptWorkbook = pptChartData.Workbook
On Error Resume Next
'update first link
pptWorkbook.UpdateLink pptWorkbook.LinkSources(1)
On Error GoTo 0
pptWorkbook.Close True
End If
Next
Next
Set pptWorkbook = Nothing
Set pptChartData = Nothing
Set pptChart = Nothing
End Sub
Was sagt das Popup/Alert von Excel konkret? Kannst du einen Screenshot hinzufügen? Was passiert, wenn Sie die Anweisung "On Error Resume Next" loswerden? –
Datei -> Links -> automatisch aktualisieren - in der Regel * sollte nicht * crash per se, aber wenn Benutzer vom Netzwerk mit Zugriff auf die verknüpften Dateien getrennt werden, könnte dies ein Problem sein. Bei einer langsamen Netzwerkverbindung kann dies dazu führen, dass Sie hängen bleiben/nicht mehr reagieren, aber Sie müssen in der Regel nur warten *, bis die Dateien abgerufen werden. Dies sind unter anderem Gründe, warum OLE/eingebettete Diagrammdaten normalerweise schwierig und unzuverlässig sind. –
Leider arbeite ich von zu Hause aus, daher kann ich keinen genauen Screenshot geben. Die Fehlermeldung besagt jedoch "Microsoft Excel wartet auf eine andere Anwendung, um eine OLE-Aktion abzuschließen" – Nikitau