首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何从excel中更新powerpoint图表中的范围

如何从excel中更新powerpoint图表中的范围
EN

Stack Overflow用户
提问于 2019-02-15 18:41:02
回答 1查看 508关注 0票数 0

我从excel工作簿运行VBA脚本,该工作簿也包含所有数据。如果我添加新的数据点,脚本会自动更新excel中的图表。但是,当我将相同的图表放到powerpoint中时,当添加新的数据点时,它不再更新。

我尝试过使用各种链接版本的图表。其中一个完成了工作,但它只是powerpoint中的一个图像,我需要在运行VBA脚本时更新实际的图表。

在下面的代码中,我尝试直接访问powerpoint图表并更新它的范围。我尝试过不同的版本,但都不能正常工作。它会打开powerpoint并识别形状,但不能更改范围。

代码语言:javascript
复制
Dim PPTApp As Object
Dim PPTPres As Object
Dim ppSlide As PowerPoint.Slide

Set PPTApp = CreateObject("PowerPoint.Application")
PPTApp.Visible = True

Set PPTPres = PPTApp.Presentations.Open("file:///C:\Users\user.name\Desktop\pptest111.pptx")
PPTPres.Windows(1).Activate

PPTPres.Slides(2).Shapes("Diagram1").Chart.ChartData.Sheets("sht2").Range ("A5:A15")
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-21 04:26:35

要更改图表的范围,必须更改标签和数据的范围。

XValues是标注的范围,值是数据的范围

如果oSh为PPTPres.Slides(2).Shapes("Diagram1")

那么它的某些变体应该是有效的

代码语言:javascript
复制
  oSH.Chart.SeriesCollection(1).XValues = "sht2!$A$5:$A15"  ' change the series range for labels
  oSH.Chart.SeriesCollection(1).values = "sht2!$B$5:$B15"   ' change the series range for data 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54707539

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档