Vba 无法将形状从Word导入PowerPoint 2013;2010年在办公室工作
我正在编写一个PowerPoint宏,它打开Word文档并将文档中的每一张图片导入到自己的幻灯片中。因为我不能将单词InlineShape对象直接放在PowerPoint中,显然,我使用的是剪贴板。有关守则如下:Vba 无法将形状从Word导入PowerPoint 2013;2010年在办公室工作,vba,ms-word,copy-paste,powerpoint,Vba,Ms Word,Copy Paste,Powerpoint,我正在编写一个PowerPoint宏,它打开Word文档并将文档中的每一张图片导入到自己的幻灯片中。因为我不能将单词InlineShape对象直接放在PowerPoint中,显然,我使用的是剪贴板。有关守则如下: Dim wdApp As Object Dim SourceDoc As Document Dim TargetSlide As Slide Dim Figures As Word.InlineShapes Dim Figure As Word.InlineShape Dim Targ
Dim wdApp As Object
Dim SourceDoc As Document
Dim TargetSlide As Slide
Dim Figures As Word.InlineShapes
Dim Figure As Word.InlineShape
Dim TargetShapeRange As ShapeRange
Set wdApp = CreateObject("Word.Application")
Set SourceDoc = wdApp.Documents.Open(FileName:=PathToFile, ReadOnly:=True)
Set Figures = SourceDoc.InlineShapes
For Each Figure In Figures
Figure.Range.Select
Figure.Application.Selection.Copy
Set TargetSlide = ActivePresentation.Slides.AddSlide(ActivePresentation.Slides.Count + 1, _
ActivePresentation.SlideMaster.CustomLayouts(6))
Set TargetShapeRange = TargetSlide.Shapes.Paste
Next Figure
有了PowerPoint 2010和Word 2010,这项功能就完美了。在安装了Word 2013的PowerPoint 2013中,引用Microsoft Word 15.0对象库而不是14.0,Set-TargetShapeRange=TargetSlide.Shapes.Paste行显示运行时错误“-2147188160 80048240”:
形状未知成员:请求无效。剪贴板为空或包含无法粘贴到此处的数据。
我尝试在选择对象和范围对象上使用Copy和CopySpicture方法。我已尝试使用Shapes.paste特殊命令。我尝试了几种访问Word应用程序对象的不同方法。什么都不管用
值得注意的是,如果我修改代码以复制图片之外的前一段文本,那么脚本会工作,它会检索文本,但不会检索图片。我知道这个问题已经存在将近两年了,但在遇到类似问题后,我通过谷歌发现了这个问题,所以我将在这里发布这个问题 试一试 就在复印之前。即使禁用屏幕更新或应用程序不可见,它也适用于我
Figure.Application.ActiveWindow.ScrollIntoView Selection.Range, True