使用 VBA 将数据从 Excel 导出到现有 PowerPoint 幻灯片

2024-05-25

我正在编写一个小型 excel 插件来进行一些简单的数据分析,但不幸的是我不是 VBA 程序员;)

到目前为止我已经做了什么:

  • 从巨大的 Excel 工作簿中获取数据并执行计算
  • 将结果写入预先格式化的 Excel“骨架”文件

我接下来想要做什么:

  • 将完全相同的数据写入也已经准备好的ppt滑动 直接从Excel VBA代码。

我认为可以在幻灯片内定义某种文本框,然后将值放入其中......只是还没有找到任何东西!

对此的任何帮助表示赞赏;)

这是 excel powerpoint 2007,但我想尽可能使其版本独立。

TIA


这是我找到的一些代码Mahipal Padigela 的 VBA 网站 http://mahipalreddy.com/vba.htm

(它也被引用于堆栈溢出 https://stackoverflow.com/questions/3424712/excel-vba-excel-macro-to-create-table-in-a-powerpoint/3424969#3424969)

''# Code by Mahipal Padigela
''# Open Microsoft Powerpoint,Choose/Insert a Table type Slide(No.4), then double click to add a...
''# ...Table(3 Cols & 2 Rows) then rename the Table to "Table1", Save and Close the Presentation
''# Open Microsoft Excel, add some test data to Sheet1(This example assumes that you have some data in...
''# ... Rows 1,2 and Columns 1,2,3)
''# Open VBA editor(Alt+F11),Insert a Module and Paste the following code in to the code window
''# Reference 'Microsoft Powerpoint Object Library' (VBA IDE-->tools-->references)
''# Change "strPresPath" with full path of the Powerpoint Presentation created earlier.
''# Change "strNewPresPath" to where you want to save the new Presnetation to be created later
''# Close VB Editor and run this Macro from Excel window(Alt+F8) 

Dim oPPTApp As PowerPoint.Application
Dim oPPTShape As PowerPoint.Shape
Dim oPPTFile As PowerPoint.Presentation
Dim SlideNum As Integer
Sub PPTableMacro()
    Dim strPresPath As String, strExcelFilePath As String, strNewPresPath As String
    strPresPath = "H:\PowerPoint\Presentation1.ppt"
    strNewPresPath = "H:\PowerPoint\new1.ppt"

    Set oPPTApp = CreateObject("PowerPoint.Application")
    oPPTApp.Visible = msoTrue
    Set oPPTFile = oPPTApp.Presentations.Open(strPresPath)
    SlideNum = 1
    oPPTFile.Slides(SlideNum).Select
    Set oPPTShape = oPPTFile.Slides(SlideNum).Shapes("Table1")

    Sheets("Sheet1").Activate
    with oPPTShape.Table
        .Cell(1, 1).Shape.TextFrame.TextRange.Text = Cells(1, 1).Text
        .Cell(1, 2).Shape.TextFrame.TextRange.Text = Cells(1, 2).Text
        .Cell(1, 3).Shape.TextFrame.TextRange.Text = Cells(1, 3).Text
        .Cell(2, 1).Shape.TextFrame.TextRange.Text = Cells(2, 1).Text
        .Cell(2, 2).Shape.TextFrame.TextRange.Text = Cells(2, 2).Text
        .Cell(2, 3).Shape.TextFrame.TextRange.Text = Cells(2, 3).Text
    end with 

    oPPTFile.SaveAs strNewPresPath
    oPPTFile.Close
    oPPTApp.Quit

    Set oPPTShape = Nothing
    Set oPPTFile = Nothing
    Set oPPTApp = Nothing

    MsgBox "Presentation Created", vbOKOnly + vbInformation
End Sub

这是一些额外的帮助使用 VBA 自动化 Powerpoint http://chandoo.org/wp/2011/08/03/create-powerpoint-presentations-using-excel-vba/ and http://www.mahipalreddy.com/vba/ppvba.htm http://www.mahipalreddy.com/vba/ppvba.htm

要获取各个幻灯片的名称,请尝试以下操作:

Dim oSlide As Slide

For Each oSlide In ActiveWindow.Presentation.Slides
    Debug.Print oSlide.Name
Next
End Sub

那应该power为您指明正确的方向! (这么滑稽)

Philip

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

使用 VBA 将数据从 Excel 导出到现有 PowerPoint 幻灯片 的相关文章

  • 使用 VBA 的下拉菜单

    我需要使用 VBA 从下拉菜单中选择特定选项 我怎样才能做到这一点 链接到我们试图从中提取的网页 IE document getElementsByName down count click 我尝试过的代码 Full Module Priv
  • excel 2010刷新BackgroundQuery中运行时错误1004

    我正在尝试用 vba 编写一个脚本 用于将多个文本文件导入 Excel 一张纸 然后将它们绘制在一张图表上 我面临一个问题刷新后台查询命令并出现 1004 运行时错误 我怎样才能解决它 谢谢 埃亚勒 这是我的代码 Sub fring1 Di
  • 如何使用 Nodejs 创建 Excel 文件?

    我是一名 Nodejs 程序员 现在我有一个数据表 我想将其保存为 Excel 文件格式 我该怎么做呢 我找到了一些 Node 库 但其中大多数是 Excel 解析器而不是 Excel 编写器 我使用的是 Linux 服务器 因此需要一些可
  • VBA Shell 并等待退出代码

    我正在打包一个办公应用程序 VBA 它调用 C 控制台应用程序来执行应用程序 大型模拟程序 的一些繁重工作 我希望能够让 VBA 应用程序等待控制台应用程序完成并从控制台应用程序检索退出代码 我已经能够做到前者 但尚未能够从应用程序中检索退
  • VBA 中的多线程

    这里有人知道如何让VBA运行多线程吗 我正在使用 Excel 无法用 VBA 本地完成 VBA 构建在单线程单元中 获得多个线程的唯一方法是使用 VBA 之外的其他具有 COM 接口的东西构建 DLL 并从 VBA 调用它 信息 OLE 线
  • 如何找到特定程序的安装目录?

    我已经成功地编写了一些用于工作的 VBA 宏 这些宏基本上创建了一个数据文件 将其提供给一个程序并对该程序的输出进行后处理 我的问题是程序安装路径是硬编码在宏中的 并且安装在我同事的计算机上可能会有所不同 我首先想到的是 我可以从每个人那里
  • 将包含宏的工作簿复制到不带宏的工作簿

    我能够复制工作簿 复制到所需位置 其中在后台包含宏 该副本还包含相同的宏 我的问题是我不希望这个重复的工作簿包含宏 谁能告诉怎么做吗 先感谢您 将您的工作簿保存为无宏 即简单地保存为 Excel 工作簿 对于我的 Excel 2007 这是
  • JasperReports 中每个工作表属性一页

    我有一个要求 我必须在 JasperReports 中设计一个报告 该报告有 4 页 第一张纸有 5 页 类似的其他纸有一页或两页 我面临的问题是 如果我使用net sf jasperreports export xls one page
  • VBA 中 AND 函数如何工作?

    如果这是一个愚蠢的问题 我很抱歉 但是 Excel VBA AND 函数是否检查其中的每个条件然后继续 或者在第一个 FALSE 条件处停止而不检查其他条件 我想知道出于优化目的 但到目前为止在网上没有找到任何相关信息 提前致谢 示例 如果
  • VBA 中的匈牙利语好吗?

    我在 Net 中不使用匈牙利语 str int 前缀 但我仍然发现它在 VBA 中很有用 因为在 VBA 中很难看到类型 这很糟糕吗 不必要 也许我错过了一些东西 我真的很感激任何反馈 我想知道有一段时间了 谢谢大家 我想说 这种匈牙利符号
  • 如何在Power Query中对N列求和

    我的数据每月都会更新 因此我尝试创建一个强大的查询表 该表将显示我创建的枢转 N 列的总和 但我似乎不知道如何在强大的查询中执行此操作 我目前有这个代码 旋转后 创建要求和的列的列表 添加索引列以限制每行 添加一列 该列对该行的列进行求和
  • 两个日期之间的小时数在 Excel 中不起作用

    根据要求 我提供了一张简化的屏幕截图来说明该问题 如您所见 我减去了两个日期并将其格式化为 h mm ss 为什么这不能提供两个日期之间经过的总小时数 有一个更好的方法吗 下面有一个很好的答案 但我试图弄清楚为什么按照此屏幕截图中所示的方式
  • 使用输入作为显示日期的基础

    我需要一种方法来使用用户窗体上的输入来确定将在输出上显示的日期 这是我的代码 If StatusBox Value lt 23 59 And ShiftCode Value AP Then Cells emptyRow 8 Value Da
  • 在VBA中初始化全局变量

    在 Excel 2003 中 如何声明全局变量并仅在打开工作簿时初始化它们一次 我有一些由几个宏使用的参数 基本上是输入文件的路径 目前 我的代码如下所示 global path1 path2 as string sub initPaths
  • 使用 ADODB 连接从关闭的工作簿中检索数据。某些数据被跳过?

    我目前正在编写一些代码 可以通过 ADODB 连接访问单独的工作簿 由于速度的原因 我选择了这种方法而不是其他方法 下面是我的代码 Sub GetWorksheetData strSourceFile As String strSQL As
  • 如何使用 VBA 添加 MS Outlook 提醒事件处理程序

    我想扩展 MS Outlook 以便当弹出日历提醒时 我可以运行一个可以运行外部程序 如批处理脚本 的 VBA 挂钩 就我而言 我想将提醒 转发 到 Linux 桌面 因为我在这两种环境中工作 并且 Windows 桌面并不总是可见 我看到
  • 在 Excel 中生成随机 -1 和 +1 值

    The Rand 函数会生成一个 0 到 1 之间的实数 这Randbetween 1 1 将生成 1 0 或 1 我想要的只是 1或1 那么 1 到 1 之间的实数呢 Easy IF RAND lt 0 5 1 1 要获得实数 请使用 R
  • 使用 VBScript 在日期字段值上选择错误的数据

    我有一张包含以下数据的表 现在 Excel 共有 36 个任务 每个任务有 4 列 第一个任务 即 Task1 名称将始终从 L 列开始 144 列描述了 36 个任务 现在我们需要按行进行检查 并需要检查 TNStart 开始日期 你们能
  • 如何将 .xlsx 文件上传到 jenkins 作业

    如何将 xlsx 文件作为构建参数上传到 jenkins 作业 我尝试使用文件参数 但我发现该文件正在丢失其扩展名或原始格式 有什么方法可以从 jenkins UI 将 excel 文件上传到 jenkins 作业吗 In the file
  • 在 VBA 中捕获 shell 命令的输出值?

    发现这个功能http www cpearson com excel ShellAndWait aspx http www cpearson com excel ShellAndWait aspx 但我还需要捕获 shell 的输出 有什么代

随机推荐

  • 引起原因:java.lang.NumberFormatException:无效的双精度:“”带有空白值

    当我遇到错误时JSON字符串有一些空白值 从服务器获取 如何处理空白值 这是 JSON status success data id 1 name ABC address ABC QWE lat 16 799999 lng 96 15000
  • 使用 YouTube API 检查视频是否可嵌入

    我试图弄清楚 YouTube 视频是否可以使用 YouTube Data API v3 嵌入 从类似问题的答案中我注意到视频的 status embeddable 属性 对于这样的请求 https www googleapis com yo
  • 如何使用 JavaScript 隐藏滚动条

    怎样才能隐藏滚动条呢 我想这样做是因为滚动条不太好 overflow hidden没有用 因为我的 div 元素还有许多其他元素 所以设置overflow不能解决我的问题 你可以用这个隐藏滚动条 document body style ov
  • 在 MVC3 应用程序的编辑操作方法中使用 AutoMapper

    这是我的控制器代码 它 100 按照我的需要工作 但是 POST 方法没有使用 AutoMapper 这是不行的 如何在此操作方法中使用 AutoMapper 我使用实体框架 4 和存储库模式来访问数据 public ActionResul
  • 防止按住 Shift 键时按下按键

    I m trying to prevent certain keys from being entered into an input box but only if that particular key is pressed whils
  • 默认 GCS 存储桶名称

    根据https cloud google com appengine docs python googlecloudstorageclient activate https cloud google com appengine docs p
  • 如何将第一行更改为R中的标题?

    我有下表 X 5 X 6 X 7 X 8 X 9 X 10 X 11 X 12 X 13 17 Zip CuCurrent PaCurrent PoCurrent Contact Ext Fax email Status 18 74136
  • 将回形针 url 添加到 json

    通常在 html 中 我们会在图像标签内使用 Model field url thumb 如何在 json 上执行此操作 尤其是使用 hash secret 如果这对任何人都有帮助 我找到了一个很好的方法来做到这一点 class MyMod
  • 在Python中比较字符串的最快方法

    我正在用 Python 编写一个脚本 该脚本将允许用户输入一个字符串 该字符串将是指示脚本执行特定操作的命令 为了便于讨论 我会说我的命令列表是 lock read write request log 现在 我希望用户能够输入 log 一词
  • 如何在winform应用程序中生成产品收据?

    我第一次开发 winform 应用程序 我有一个 gridview 其中包含用户已购买的产品列表 我点击了一个 打印 按钮 允许用户生成如下收据 所以在这里我很困惑是否应该使用 winform默认RDLC或Crystal Report 或者
  • 在 Perl 中,“$a”和“$b”在 sort() 函数之外还有什么特殊用途吗?

    我问了一个关于 Perl 中 a 和 b 使用的问题sort 前几天的功能 Perl 的 sort 函数中的 a 和 b 到底是什么 https stackoverflow com questions 26127617 what exact
  • IIS - 打开基本身份验证会导致登录重定向循环

    在 IIS 站点上启用基本身份验证后 我尝试访问该站点 它不显示登录表单 而是将我重定向到其他地方 其中包含一个我无法弄清楚的长链接 http 我的域名 Login Login Login ReturnUrl 2FLogin 2FLogin
  • 在 MongoDB 中删除时自动删除引用对象

    假设我有一个这样的架构 var Person new Schema name String var Assignment new Schema name String person ObjectID 如果我删除一个人 仍然可能会留下引用不存
  • 了解自加入

    我正在练习自加入这是我在编写查询时不明白的事情 我有一张桌子 employee 员工表包含三个记录 id employee manager id 1 Ola NULL 2 Ahmed 1 3 Tove 1 最后一列 manager id 引
  • Heroku 启动超时(错误 R10)

    每次我启动应用程序时 如果没有以下内容 它就无法超过 60 秒点 2012 05 06T22 41 11 00 00 heroku web 1 Stopping process with SIGKILL 2012 05 06T22 41 1
  • FAT32 格式存储上的文件系统链接

    我知道FAT32 还有FAT16 12都不支持符号链接 nor 硬链接 然而我想到了这个想法 FAT 规范描述了每个文件都与一个目录项相关联 根据我的理解 可以说目录中的文件条目以某种方式或其他方式points文件的内容 那么 如何定义两个
  • IntelliJ IDEA 13 + Tomcat 7 部署

    我尝试在 Tomcat7 上的 IDEA 中部署空的 Web 应用程序 Tomcat 停止在线工作 INFO Deploying web application directory C devel Servers apache tomcat
  • 解码 JavaScript Web 令牌 (JWT) 的到期日期?

    我无法理解应用程序中嵌入的 JWT 的到期日期格式 例如 1473912000 这翻译成什么 1473912000 毫秒 某个 x 日期 任何帮助将不胜感激 正如詹姆斯所指出的 该数字是自 1970 年 1 月 1 日以来的秒数 这被转换成
  • 想要并行运行非线程安全库 - 可以使用多个类加载器来完成吗?

    我从事的一个项目中 我们使用的库不能保证线程安全 实际上也不是 并且在 Java 8 流场景中是单线程的 它按预期工作 我们希望使用并行流来获得容易实现的可扩展性成果 不幸的是 这会导致库失败 很可能是因为一个实例干扰与另一实例共享的变量
  • 使用 VBA 将数据从 Excel 导出到现有 PowerPoint 幻灯片

    我正在编写一个小型 excel 插件来进行一些简单的数据分析 但不幸的是我不是 VBA 程序员 到目前为止我已经做了什么 从巨大的 Excel 工作簿中获取数据并执行计算 将结果写入预先格式化的 Excel 骨架 文件 我接下来想要做什么