gpt4 book ai didi

excel - PowerPoint VBA - 定期更新 Excel 中的链接图

转载 作者:行者123 更新时间:2023-12-02 19:25:34 24 4
gpt4 key购买 nike

我正在尝试构建这个系统,其中包含来自外部 Excel 文件的链接图的 PowerPoint 演示文稿。我发现我可以在 PowerPoint 中右键单击该图表,然后单击“更新链接”,该图表就会自动更新。

但是如果我想要自动化怎么办?如果这可以在不创建插件的情况下完成,那就太好了。那么 PowerPoint 中有哪些事件处理程序?我认为有一个 SlideChanged 事件或其他事件?我是否可以让演示文稿无限循环并在每个新的幻灯片切换时更新链接?可能有大量的图表。图表的每个部分都有一张幻灯片。

或者,还有其他好主意吗?我正在尝试构建的系统基本上是一个用于收集数据并以任何可能需要的形式显示数据的框架。数据自动从经济软件导入到数据库中。因此,我创建了一个命令行应用程序,它基本上打开一个 Excel 文件并运行一个宏(收集新数据并将其复制到工作表中)。该命令行应用程序设置为通过计划任务在特定时间运行。我想自动显示这些数据的图表。

实际上我自己做了很多:)

这是 VB.NET 应用程序的代码(可以用作命令行应用程序)

Imports Microsoft.Office.Interop
Public Class Form1

Dim oPPTApp

Sub updatePPTGraph()
For Each oSlide In oPPTApp.ActivePresentation.Slides
For Each oShape In oSlide.shapes
If oShape.Type = 10 Then
oShape.LinkFormat.Update()
End If

Next
Next
End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
oPPTApp = New PowerPoint.Application
oPPTApp.visible = True
Dim oPresentation As PowerPoint.Presentation

oPresentation = oPPTApp.Presentations.Open("C:\Users\kenny\Documents\Charttest.pptx")
updatePPTGraph()
End Sub
End Class

这显然是一个开始。我需要弄清楚是否可以在幻灯片放映时完成。但我认为这应该是可能的。当我设法得到一些值得一提的东西时会更新:)

最佳答案

更改基础幻灯片(即从外部 Excel 应用程序)应该更新正在运行的演示;正在运行的演示中的当前幻灯片通常不会显示更新,除非您强制重画,但当它再次出现在演示中时,更新应该是可见的。

总而言之,从 Excel 自动化 PPT 比让它控制事物并按需吸收更新更容易......至少会这样,除非您想包含一个加载项来处理 PPT 中的事件.

关于excel - PowerPoint VBA - 定期更新 Excel 中的链接图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5964813/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com