问题标签 [powerpoint-2007]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
140 浏览

c# - HRESULT:0x800A03EC 和 PowerPoint - 或 - 编辑图表的更好方法?

我有一个奇怪的错误,我试图弄清楚:

我有一个 PowerPoint 模板 (.pptx) 用于共享驱动器中的幻灯片,我们总是在 PPT VSTO 的代码中访问它。在该模板内,有一张包含图表的幻灯片。我们可以成功加载模板等,甚至可以定位到Shape。

我能够做到以下几点:

出于某种原因,每次我尝试选择图表时,它都会因 0x800A03EC 而崩溃。我完全不知道为什么。

目前,我们的策略是存储模板,加载它们,然后访问 Chart 对象内部的 ChartData。我们无法使用 OfficeXml 等,因为演示文稿必须实时打开和完成。有没有更好的方法来解决这个问题,或者填充图表的数据?

提前致谢!

0 投票
2 回答
387 浏览

batch-file - 登录脚本 - PowerPoint

我有一个简单的登录脚本,它将拉另一个 .bat 指向我们的 powerpoint 模板。

问题是,每当我使用下面的内容时,我总是会在第二个实例上弹出一个应该隐藏的弹出窗口,正如您所看到的-y那样并没有隐藏它。我之前尝试过一分钟,xcopy但这会导致错误,而且我对此的了解相当有限。

下面是代码:

登录脚本:

我很欣赏我们正在从一个网络复制到另一个网络,这可能看起来很愚蠢,但我们所有的配置文件都位于每个卫星办公室的本地服务器上。

任何帮助将非常感激。

0 投票
1 回答
15160 浏览

vba - 使用 vba 在 PowerPoint 2007 中的幻灯片上定位图像

我想在 Windows 上的 PowerPoint 2007 中做两件事之一。

第一个是更改在图像中粘贴的默认位置。当我粘贴用 SAS 制作的图表时,它会粘贴到左上角。理想情况下,我想更改默认粘贴位置。似乎没有任何简单的选择,但我认为 VBA 可能是可行的。

如果不可能,那么我想编写一个 VBA 宏来逐步浏览每张幻灯片并更改图像位置。

由于这个网站和其他网站(MsgBox 只是一个测试),我得到了一个幻灯片循环:

除此之外,我没有太多的运气。我已经看到了选择幻灯片上的所有图像并裁剪或调整它们大小的代码片段,我在 excelhelphq.com 上发现了这个用于定位图像的位:

但我不确定如何将它集成到循环中,而且 Powerpoint VBA 的在线文档并不是特别强大。一些代码处理 ShapeIndex 但我不确定如何使用它。

我应该提一下,当我有一张图片时,我在幻灯片上只有一张图片(不过,有些幻灯片根本没有图片)。

这似乎是最好的节省时间的方法,尽管我仍然首先手动粘贴到 PowerPoint 中。

我很感激这方面的任何帮助!我找不到任何可以解决这个确切问题的东西。

PPT的VBA会被淘汰吗?感觉就像微软不希望人们能够根据他们不出色的在线文档来弄清楚如何使用它。

0 投票
0 回答
64 浏览

vb.net - 电源点事件

当文本框中发生更改时,是否应处理 Power Point 中的任何类型的事件,我单击 Power Point 中除文本框外的任何位置,它应该存在于 2007 年、2010 年、2013 年及以上。

我处理了 windowslectionChange 但单击菜单时未处理

0 投票
1 回答
587 浏览

c# - 在 PowerPoint 2007 中的 SlideMaster 上选择形状

我正在为 PowerPoint 开发一个插件,当 PowerPoint 在 SlideMaster 视图中时,它会与之交互。

取决于内容,我需要在 SlideMaster 或 CustomLayouts 上选择 Shapes。

我已经设法在 CustomLayouts 上选择它们,但是当 Shapes 位于 SlideMaster 上时,我没有设法做到这一点。

我尝试使用以下方法:

第一种方法

此方法仅在用户手动选择特定幻灯片母版时有效。否则我得到例外:

“形状(未知成员):无效请求。要选择形状,其视图必须处于活动状态。”

第二种方法

当我使用这种方法时,我得到以下异常:

尝试读取或写入受保护的内存。这通常表明其他内存已损坏。

我没有找到任何方法来激活 SlideMaster 以选择其上的形状。

有没有办法做到这一点?

先感谢您。

0 投票
1 回答
268 浏览

excel - 在 Powerpoint 2007 中刷新 EmbeddedOLEObject Excel.Sheet.8

我正在构建一个 Access 数据库,用于更新 Powerpoint 演示文稿中的数据 - 主要是图表,偶尔会有一些文本。所有代码都存储在 Access 中,问题出在下面的第二个过程中。

一切正常:我可以打开演示模板,将数据从 Access 获取到嵌入图表后面的正确工作表单元格中 - 然后我必须手动编辑图表,然后才能使用新数据进行更新。

我有一些程序来完成这项工作:

第一个过程循环遍历演示文稿中的每张幻灯片,并在达到某些形状时调用正确的过程:

下一个过程将数据从 Access 查询复制到嵌入的 Excel 工作表中。
该过程的最后几行显示了我试图让实际图表用新数据更新的内容 - 目前只有当我手动单击“编辑”时它才会这样做,此时它突然意识到有新数据。

为了完整起见,这两个过程使用这些函数来创建 Powerpoint 实例并找到工作表上的最后一个单元格:

0 投票
1 回答
119 浏览

excel - 使用 VBA 添加到 Powerpoint 中的嵌入式图表的公式引用了错误的单元格

我正在从 中Powerpoint 2007的查询更新图表Access 2007图表是使用Insert ~ Object ~ Microsoft Office Excel Chart
手动添加和设置的,应该看起来像这样(我已经混淆了轴标签):
在此处输入图像描述

问题

我的 Access 查询返回所选月份的数据,但是我需要为月份之间的空格添加两个额外的系列。

目前我将数据放在工作表中,插入空白行并使用公式计算该月的最大值,加 2 并减去该月的原始数据值。
公式的一个例子是: =MAX(R3C2:R3C17)+2-R3C
如果我逐步执行我的代码,则此公式输入正确,但如果我运行代码,它显示为=MAX(R3C2:R3C17)+2-R3C[-1](在工作表中转换为 A1 样式)并且我的图表显示为:
在此处输入图像描述 我确实尝试更新代码,所以最终结果CC[+1]并且这有效有一段时间(但我对此不满意,因为它不应该工作,我不知道为什么会这样)。

添加公式的代码行是:

如您所见,即使公式位于第 3 行,我也使用x-1而不是R[-1]在公式中返回第 65536 行。R[-1]

图表后面的数据如下所示(您可以看到公式在尝试引用列 A 时返回错误值的位置)。 在此处输入图像描述

我正在寻找的解决方案:

如何正确地将公式输入到工作表
中(不敢相信我在从 Excel 97 开始后会问这个问题)。
或将交叉表查询与计算数据结合起来执行与公式相同的功能。
(我将添加 SQL 并解释是否有人认为这是一个更好的选择)。

生成报告的代码如下(代码在 Access 中)。

代码入口点:

TeamBreakdown 代码:
(Error_Categories 是相同的 - 一旦我知道发生了什么,我将合并)。

查找最后一个单元格的代码(在公式中使用):

0 投票
0 回答
80 浏览

c++ - 为什么 Shapes.Item 在 PowerPoint 2007 上返回 0x8004005 错误?

我首先使用 PowerPoint 2016 测试了这段代码(创建新文件并删除所有形状的简单代码)。它似乎工作得很好:

但是当我在 Powerpoint 2007 上测试它时,发生了一些奇怪的事情。当我调用该Shapes->Item方法时,它抛出了一个_com_error错误代码为 0x80004005(未指定错误)的消息,Shapes (unknown member) : Failed.我搜索了此错误消息但一无所获。我什至尝试使用 2007 版本的 typelib 文件,但也没有用。过了一会儿,我决定恢复使用该IDispatch::Invoke方法(这很痛苦),并且不知何故奏效了。不知道为什么会这样,为什么我之前的尝试没有。

我正在使用#import智能指针将 Microsoft Office 库导入我的代码。

0 投票
1 回答
297 浏览

vba - 将 TextRange 设置为从当前行的开头开始 (PowerPoint 2007 VBA)

鉴于光标在 some 内,TextRange tr我想要 a作为输入参数并选择(或返回)从包含的当前行的开头开始并在 "." 的下一个实例结束的 a 或者 ”:”)。理想情况下,这将适用于任意或当前选择 ( )。注意:可能是这样(实际上没有选择)。SubtrTextRangetr.startTextRangeActiveWindow.Selection.TextRangetr.Length = 0

0 投票
0 回答
19 浏览

php - PHPPowerpoint 实时对象问题

我正在使用来自 codeplex 的 phppowerpoint,这在本地 xampp 服务器上工作正常,但是当我有实时显示 phppowerpoint 类时,请帮助我