使用VBA将幻灯片的所有图片保存到单个JPG图像中



我想在VBA powerPoint中执行以下操作:

我有一个PowerPoint,上面有六张图片。理想情况下,我想将六张图片分组以创建一张新图片作为.jpg,然后将.jpg图片导出到文件中。导出照片后,我想删除6张单独的图片,以便我可以导入单张.jpg图片。

我用这个开始:将幻灯片的所有形状保存到单个JPG图像中。我理解评论,但不知道如何执行它。

如果有更好的方法,请分享。

谢谢!

这会将当前选定的形状转换为 PNG,将其粘贴回幻灯片并删除原始形状。

您可能希望修改此设置以确保选择了某些内容,如果没有,则优雅地退出,或者如果它仅供您自己使用,如果您忘记选择某些内容,请让 PPT/VBA 责骂您。

Sub ConvertSelectionToImage()
Dim oShapes As ShapeRange
Dim oGroup As Shape
Dim oSingleShape As Shape
' Get a reference to the selected shapes
Set oShapes = ActiveWindow.Selection.ShapeRange
' Group them so we can later pick up their coordinates
Set oGroup = oShapes.Group
' copy to clipboard
oGroup.Copy
' paste from clipboard as PNG to retain transparency
Set oSingleShape = ActiveWindow.Selection.SlideRange.Shapes.PasteSpecial(ppPastePNG)(1)
' Position the pasted PNG to match original shapes
With oSingleShape
.Left = oGroup.Left
.Top = oGroup.Top
End With
' And delete the original shapes
oGroup.Delete
End Sub

最新更新