【发布时间】:2016-07-18 14:11:59
【问题描述】:
我有一个 PowerPoint 演示文稿,其中包含 Excel 表格作为对象。
Excel 文件每周更新一次。更新 Excel 文件后,我打开 PowerPoint,双击每个对象 -> 菜单数据 -> 编辑链接 -> 选择所有源 -> 更新值。
宏是否可以在 PowerPoint 中找到 Excel 对象并对其进行更新?
在网上搜索后,我设法获得了以下代码,这使我进入了双击对象的步骤,但我不知道如何更新链接。
Sub update_objects()
Dim it As String
Dim i As Integer
For i = 1 To ActiveWindow.Selection.SlideRange.Shapes.Count
With ActiveWindow.Selection.SlideRange.Shapes(i)
If .Type = msoEmbeddedOLEObject Then
ActiveWindow.Selection.SlideRange.Shapes(i).Select.OLEFormat.DoVerb
End If
End With
Next i
End Sub
【问题讨论】:
-
理论上,ActivePresentation.UpdateLinks 应该这样做。你试过吗?
-
@SteveRindsberg 感谢您的建议,我已经尝试过了,它只会更新演示文稿中的图表,当演示文稿打开时无论如何都会更新。我所拥有的是需要更新的来自 excel 的实际表格。谢谢,尤里
-
您是指专门的 Excel 表格(而不是 Excel 中恰好看起来像表格的一堆单元格)?我不确定表格的行为方式,但如果它是链接单元格,那么更新链接应该可以工作。如果单元格范围是嵌入的,那么没有。必须激活 Excel 对象才能进行任何更改。
-
@SteveRindsberg 感谢您的回复,很抱歉造成混淆。它是一组通过公式链接到每周更新的其他电子表格的单元格。这些细胞是嵌入的。我试过从文件中插入对象并链接它,但我得到的问题是一张excel表有几个表(单元格),我一次只需要显示一个表,但链接的对象显示该表上的所有数据.使用嵌入式对象,我可以调整它的大小,使其仅显示工作表的某些部分。我以前没有使用过链接对象,所以需要阅读更多关于如何使用它们的信息。谢谢
-
而不是使用插入 | PPT 中的对象,从 Excel 开始。选择要链接的单元格,右键单击,复制然后转到 PPT 并选择选择性粘贴 |在链接旁边打勾,然后选择 Excel 工作表对象(或类似的东西)。
标签: excel vba powerpoint embedded-object