我有多张幻灯片,其中包含带有示例数据的多个图表。我想用实际数据更新这些图表,这些数据位于同一文件夹的excel文件中。我可以通过ppt中的VBA来执行此操作吗?
我阅读了此答案edit chart data in powerpoint,但这并未指定我可以在何处提及excel文件并选择特定数据。
请帮助!
答案 0 :(得分:0)
在您链接到的问题上,最高答案提供了以下代码:
With ActivePresentation.Slides(sl).Shapes(sh).Chart.ChartData
.Activate
.Workbook.Sheets(1).Range("A1").Value = "test_data"
.Workbook.Close
End With
关于答案的评论之一指出,一旦Activate
ChartData,基本上就是在处理Excel。您还可以在Powerpoint VBA中启动Excel的实际实例,然后打开工作簿,从中提取数据,然后将其放入ChartData
对象中,就像在excel中使用VBA一样。
要在PowerPoint VBA中启动Excel实例,请尝试以下操作:
Dim xlApp As Excel.Application
Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = True
xlApp.Workbooks.Open "C:\lol\Book1.xlsx", True, False
'once Book1 is open you can extract data from Book1 and move it to
'the appropriate place in .ChartData.Workbook
Set xlApp = Nothing
(以上代码来自this answer)