【发布时间】:2015-04-21 08:45:55
【问题描述】:
我正在尝试使用 VBA 将带有嵌入数据的 msoChart 对象从剪贴板粘贴到 PowerPoint 2010 中。 (在 Excel 2010 中创建的图表)。
我能找到的唯一示例涉及将图表链接到 Excel 文件或创建 msoEmbeddedOLEObject。
如果我在 PowerPoint 2010 中手动粘贴,我会看到“嵌入工作簿”的粘贴选项。但是它在手动“选择性粘贴”中不可用。
所以看起来除了粘贴图表之外还需要一些其他的东西。但我不确定那是什么或如何去做。
我试过的是
Sub PasteExample()
Dim Sld As Slide
Dim Shp As ShapeRange
Set Sld = ActiveWindow.View.Slide
'# This pastes clipboard content as a linked chart
Set Shp = Sld.Shapes.Paste
End Sub
Sub PasteExample2()
Dim Sld As Slide
Dim Shp As ShapeRange
Set Sld = ActiveWindow.View.Slide
'# This option does not work, object is still linked
'Set Shp = Sld.Shapes.PasteSpecial(DataType:=ppPasteDefault, Link:=msoFalse)
'# This option does not work, object is still linked
'Set Shp = Sld.Shapes.PasteSpecial(DataType:=ppPasteShape, Link:=msoFalse)
'# I'm not after OLEObjects
'Set Shp = Sld.Shapes.PasteSpecial(DataType:=ppPasteOLEObject, Link:=msoFalse)
End Sub
如果你能解释一下,非常感谢。
【问题讨论】:
标签: vba excel powerpoint