Ron*_*nie 5 powerpoint vba worksheet
真的不确定要放置什么堆栈站点.随意将其移动到正确的.我的问题与编程无关,但我在幻灯片中嵌入了这些"工作表对象",有很多功能点.有些似乎是excel中的图形以及Visio中的其他图表类型项目.我需要将所有这些"工作表对象"转换为幻灯片中的图像.
我现在的过程是复制对象>粘贴为图像>移动到正确的位置>删除"工作表对象".这是一个非常耗时且乏味的过程.有没有我可以编写的宏或可以自动转换所有这些对象的东西?我到目前为止尝试使用谷歌搜索并没有运气
这应该让你开始:
Sub ConvertAllShapesToPic()
Dim oSl As Slide
Dim oSh As Shape
For Each oSl In ActivePresentation.Slides
For Each oSh In oSl.Shapes
' modify the following depending on what you want to
' convert
Select Case oSh.Type
Case msoChart, msoEmbeddedOLEObject, msoLinkedOLEObject
ConvertShapeToPic oSh
Case msoPlaceholder
If oSh.PlaceholderFormat.ContainedType = msoEmbeddedOLEObject _
Or oSh.PlaceholderFormat.ContainedType = msoLinkedOLEObject _
Or oSh.PlaceholderFormat.ContainedType = msoChart _
Then
ConvertShapeToPic oSh
End If
Case Else
End Select
Next
Next
End Sub
Sub ConvertShapeToPic(ByRef oSh As Shape)
Dim oNewSh As Shape
Dim oSl As Slide
Set oSl = oSh.Parent
oSh.Copy
Set oNewSh = oSl.Shapes.PasteSpecial(ppPasteEnhancedMetafile)(1)
With oNewSh
.Left = oSh.Left
.Top = oSh.Top
Do
.ZOrder (msoSendBackward)
Loop Until .ZOrderPosition < oSh.ZOrderPosition
End With
oSh.Delete
End Sub
Run Code Online (Sandbox Code Playgroud)