我正在编写一个实用程序,用于将图表和表格从Excel复制到Powerpoint演示文稿中。 要求之一是能够以以下三种方式之一进行粘贴。其中两个很简单。我遇到这个问题: 作为可编辑的图表,但链接处于禁用状态,因此用户可以在Powerpoint中设置图表格式,但在Excel中对原始图表数据的更改不会通过。
我该怎么做?
我已经尝试了几乎所有我能想到的数据类型和链接选项,例如
activeSlide.Shapes.PasteSpecial DataType:=ppPasteShape, Link:=msoFalse
activeSlide.Shapes.Paste
ppApp.CommandBars.ExecuteMso "PasteSourceFormatting"
activeSlide.Shapes.PasteSpecial DataType:=ppPasteDefault, Link:=msoFalse
activeSlide.Shapes.PasteSpecial DataType:=ppPasteOLEObject, Link:=msoFalse
即使发生先前的5000 DoEvent循环,PasteOLEOBject也会使Excel崩溃
但是它要么粘贴为无法在PowerPoint中编辑的图表,要么粘贴为可以编辑但仍链接到源数据的图表,以便它更改Powerpoint的更改。
答案 0 :(得分:0)
取消请求。 我发现粘贴后即可断开形状的链接:-
activeSlide.Shapes.Paste
ppApp.CommandBars.ExecuteMso "PasteSourceFormatting"
For intCount = 1 To 5000: DoEvents: Next
activeSlide.Shapes(activeSlide.Shapes.Count).LinkFormat.BreakLink