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

2024-01-27

我正在尝试构建这个系统,其中包含来自外部 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 中的事件。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PowerPoint VBA - 定期更新 Excel 中的链接图 的相关文章

  • Excel 超链接到带有 ID 或命名锚点的网页位置

    在 Excel 中 我可以创建指向网页的超链接 但是 如果 URL 包含 字符 Excel 始终会将井号转换为空格 连字符 空格 因此链接不再有效 网址http www example com page location http www
  • 保护 Excel VBA 代码的最佳方法? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我已经整理了一个简单的 Excel 数据库 该数据库执行一些宏函数 并且我需要将此数据库分发给几个人 但他们无法看到宏函数实际上是如何
  • 在 Excel 中打印 MATLAB 图窗并调整其大小

    我在 MATLAB 中有两个带有手柄的图形hFig1 and hFig2 我想将它们打印到 Excel 中的特定单元格 单元格 E3 和 I3 并将它们重新调整为 2 英寸 x 3 英寸 我尝试过使用 AddPictures对象处理程序和使
  • 如何在自定义数据验证中使用用户定义的函数?

    In my Worksheet我有一个Table并想要定义Data validation对于包含日期的列 如下所示 S2M B2 lt gt Error 在上面 S2M 是一个用户定义的函数 用于将日期转换为Persian date to
  • Excel VBA 通过简单除法引发溢出错误

    Excel 2013 VBA 这段代码 Sub test On Error GoTo Err Dim p As Double p 362 100 2005 Exit Sub Err If Err Description lt gt And
  • 转置 CopyFromRecordset Excel VBA

    我的 Excel VBA 中有以下代码 可将 SQL 中的表中的数据复制到 Excel 中 该数据从单元格 C2 开始水平插入 但我希望将其垂直插入到 C 列 Sheets Control Range C2 CopyFromRecorset
  • 将 .XLS 转换为制表符分隔的 .TXT

    我可以使用 C 将 Excel XLS 文件转换为 txt tsv 制表符分隔值 文件吗 使用 OleDb 可能很棘手 并且可能会导致问题 具体取决于创建电子表格的 Excel 版本 例如 上面的示例适用于 xls 但不适用于 xlsx 您
  • 用户完成后关闭 Excel

    任务非常简单 我想从 VB net GUI 打开 Excel 文档 xls 用户将处理 Excel 文件 用户完成后关闭 Excel 文件 我想要VB net代码释放Excel对象 问题是 当用户关闭文件时 Excel 对象仍然可以在任务管
  • Excel VBA 将范围值复制到数组,

    我有以下代码摘录 我试图将一系列值复制到声明的数组上 但它一直给我 无法分配给数组 错误 Dim permittedCurve 0 To 7000 As Variant permittedCurve activeWorkbook Works
  • 如何循环浏览文件夹内所有工作簿中的所有工作表

    我使用宏对计算机上给定文件夹中每个工作簿的每张工作表进行更改 事件顺序 打开用户选择的文件夹中的每个 Excel 文件 在工作簿中的每个工作表上执行任务 保存文件 关闭工作簿 宏不起作用 问题似乎是由Selection AutoFilter
  • MS Excel 对于每个循环:插入行

    我有一个包含 242 行的工作表 我想在每个现有行下面创建一个新行 相反 我的代码在第 1 行下方创建了 242 行 我花了整个下午的时间在 Google 和 Stack Overflow 上 尝试了各种想法 但遇到了同样的问题 这是我的代
  • 将字符串中的一个字符替换为另一个字符

    我有如下数据 A B C D 我想更换C与数据 例如 Z 这样它可能看起来像 A B Z D 我该怎么做 SUBSTITUTE A1 C Z 虽然我不清楚你是否想要G or Z 你提到G但你的示例输出显示Z
  • Excel VBA 根据条件通过电子邮件发送每一行

    我正在尝试得到这个 因此 发送如下所示的电子邮件 然后就变成这样 我需要它跳过空白电子邮件地址 在发送时将已发送插入到第五列 并在有可用电子邮件时为每一行创建一封新电子邮件 新电子邮件需要与该单独行相关的特定信息 我正在使用 Ron de
  • C# - 如何迭代 Excel._Worksheet 中的所有行?

    我希望以编程方式从 Excel 工作表中提取数据并将其插入数据库表中 如何确定工作表中的列数和行数或以其他方式迭代行 I have Excel Worksheet worksheet Excel Worksheet workbook Act
  • 在 Excel 中将多组列相互叠置

    所以我有多组 3 列 每组始终采用相同的列顺序 SKU 销售 日期 我想知道是否有 VBA 脚本或其他方法可以执行以下操作 1 Copy G I 2 Paste into A C 3 Copy J L 4 Paste into A C Un
  • UnicodeDecodeError:“utf-8”编解码器无法解码位置 14 中的字节 0xb9:起始字节无效

    我正在使用 Django REST 进行文件上传测试 Python3 6 2Django1 11djangorest框架 3 6 4Excel OSX 15 38 170902 操作系统 10 12 6 过去使用普通照片文件可以成功完成此操
  • Excel 中分组经常性 CF 的净现值

    下面是 60 个期间的现金流量表 有一组经常性现金流量 Excel 中是否有一种简单的方法可以计算所有 60 个期间 每月现金流量 的 NPV 而无需创建 60 行的表格并使用 NPV 公式 因此 60 个订单项的公式如下所示 NPV PE
  • java代码的等效vb代码

    谁能告诉我这段Java代码到底做了什么 SecureRandom random SecureRandom getInstance SHA1PRNG byte bytes new byte 20 synchronized random ran
  • 如何使用波斯日期(Shamsi)? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我想直接使用 Excel 2007 工作表中的波斯日期 Hijri Shamsi 作为计算基础 这怎么可能 我将通过以下方式将波斯日期转换
  • 如何从 Powerpoint 2010 导出电影?

    如何使用 MS Office PIA 主互操作程序集 或其他方式以编程方式将嵌入视频从 powerpoint 2010 导出到外部文件 在演示文稿中嵌入视频是 Powerpoint 2010 中的一项新功能 我找不到解决方案 PPTX 文件

随机推荐

  • Laravel 队列错误不允许序列化“Illuminate\Http\UploadedFile”

    我正在尝试使用 laravel 中的队列 bean 上传文件 但出现此错误 不允许序列化 Illuminate Http UploadedFile 我的代码是 protected file protected Id public funct
  • 如何完全清除所有 matplotlib 图的内存

    我有一个数据分析模块 其中包含调用的函数matplotlib pyplotAPI 多次 每次运行最多生成 30 个数字 这些数字在生成后会立即写入磁盘 因此我需要将它们从内存中清除 目前 在每个函数结束时 我都会 import matplo
  • IplImage 结构的 boost 序列化问题

    我无法让 boost 序列化模块与 OpenCV 的 IplImage 结构一起使用 这是我用于序列化 IplImage 的代码 以及自定义结构中的一些 JSON 数据 template
  • Google Play 应用内结算版本 3 购买的服务器端验证(第 2 部分)

    所以我想我了解了应用内计费和服务器端验证的工作原理 这要归功于对我之前的问题 https stackoverflow com questions 16067180 server side verification of google pla
  • Conda gcc 不会取代系统 gcc

    我正在尝试在 Conda 环境中编译一些代码 我在其中 之前安装了编译包gcc linux 64 然而 即使在停用并再次重新激活环境之后 gcc还是 usr bin gcc 我应该怎么做才能让 Conda 按预期工作 即 使用该工具 我安装
  • 在matlab中计算列相关性的快速方法是什么

    我有两个非常大的矩阵 60x25000 我想仅计算两个矩阵之间的列之间的相关性 例如 corrVal 1 corr mat1 1 mat2 1 corrVal 2 corr mat1 2 mat2 2 corrVal i corr mat1
  • 我想我发现了一个“不存在的单子”

    我发现 Haskell 的一个奇怪的特性让我相信我的思考方式是错误的 我认为在Haskell中 应该有一些 不存在的 单子 这是因为以下原因 Prelude gt return 1 1 Prelude gt return 1 gt gt x
  • 是否可以将一列引用为多个外键?

    I have few tables and I want to reference one column from PDF table to multiple other tables 例如 如果 PDF 表格select输出看起来像这样
  • 使用 C++ 数组中出现次数最多的元素?

    我尝试过以下代码来获取数组中出现次数最多的元素 它运行良好 但唯一的问题是 当有两个或多个元素具有相同的出现次数并且等于最多出现的元素时 它只显示扫描的第一个元素 请帮助我解决这个问题 include
  • 用自定义激活替换 sigmoid 激活

    我正在尝试用分段线性函数替换 Keras sigmoid 函数 定义如下 def custom activation 4 x if x lt 6 return 0 elif x gt 6 and x lt 4 return 0 0078 x
  • 使用仅 getter 自动属性显式实现接口(C# 6 功能)

    使用自动属性进行显式接口实现在 C 5 中是不可能的 https stackoverflow com a 3905035 1565070 但现在 C 6 支持仅 getter 自动属性 http www c sharpcorner com
  • 如何等待2秒?

    如何导致执行延迟指定的秒数 这不这样做 WAITFOR DELAY 00 02 正确的格式是什么 的文档WAITFOR http msdn microsoft com en us library ms187331 aspx没有明确规定所需的
  • 如何使用python列出Kafka消费者组

    我想用 python 获取 Kafka 消费者组列表 但我不能 我使用zookeeper python客户端 kazoo 但消费者组列表为空 因为此方法适用于旧消费者 而我们不使用旧消费者 如何使用python代码获取消费者组列表 kafk
  • std::mutex::lock 阻塞 CPU 使用

    我希望能够随意冻结和解冻线程 我目前的解决方案是通过回调和忙等待睡眠来完成的 这显然不是一个最优解 我正在考虑让主线程锁定互斥体 然后让从属线程运行一个锁定和解锁同一互斥体的函数 我担心的是 如果是真正的繁忙等待 可能会占用 CPU 资源
  • IsAssignableFrom() 在应该返回 true 时返回 false

    我正在开发一个加载指定文件夹中包含的 dll 的插件系统 然后 我使用反射来加载程序集 迭代它们包含的类型并识别任何实现我的程序集IPlugin界面 我正在使用类似于以下的代码进行检查 foreach Type t in myTypes i
  • 在 ExtendScript for Illustrator 中执行外部脚本

    Summary 有没有办法使用execute 函数将参数传递给Python脚本 并让Python脚本在执行时使用该参数 然后将结果返回给ExtendScript 语境 我正在为 Illustrator 构建一个脚本 该脚本必须查询 Web
  • MapStruct 可以对 Hibernate 实体类进行深度代理吗

    对于想要直接返回实体类的 Web 服务开发人员来说 这是一个常见问题 即使加载了我需要的所有数据 仍然有许多我不需要的未初始化的代理和集合 我希望他们只返回 null 而不是抛出延迟加载异常 基本上我只想要 POJO 合约 但是必须清除代理
  • randperm() 可以生成多个随机排列吗?

    在Matlab中 p randperm n k 返回一个行向量 其中包含从 1 到 n 含 中随机选择的 k 个唯一整数 一次调用 randperm 是否可以返回多行向量 每一行都如上所示 如果没有 是否有其他方法来生成几个随机排列 在这种
  • 如何跨 DLL 边界使用 Boost.Log?

    我正在尝试整合升压日志 http www boost org doc libs 1 55 0 libs log doc html index html在一个相当大的应用程序中 该应用程序由一个从 DLL 动态加载插件的主应用程序组成 最初的
  • PowerPoint VBA - 定期更新 Excel 中的链接图

    我正在尝试构建这个系统 其中包含来自外部 Excel 文件的链接图的 PowerPoint 演示文稿 我发现我可以在 PowerPoint 中右键单击该图表 然后单击 更新链接 该图表就会自动更新 但如果我想要自动化怎么办 如果这可以在不创