VBA 将 PPT 幻灯片保存为 PNG 文件同时忽略隐藏幻灯片的代码

VBA Code to Save PPT Slides as PNG Files While Ignoring Hidden Slides

我的 PPT 可以有任意数量的幻灯片,其中任何一张都可以在需要时隐藏。我编写了一个宏来将演示文稿保存为 png 图像,但它将每张幻灯片(包括隐藏的幻灯片)保存为单独的图像。我希望它保存除隐藏幻灯片之外的所有内容。有谁知道可以跳过隐藏幻灯片的导出或另存为方法吗?当我将它导出为 PDF 时,它会自动忽略隐藏的幻灯片,但 png 文件不是这种情况。

保存所有幻灯片的代码,包括隐藏的幻灯片:

ActiveWindow.Presentation.SaveAs filenamepng, ppSaveAsPNG 'Save the.png files for each slide.

我看到有不 "print" 隐藏幻灯片的选项,但我没有看到类似的保存 png 图像的选项。感谢您能给我的任何帮助!

感谢 SteveRindsberg 的评论,我能够想出以下解决问题的代码。

Dim sld As Slide
Dim shp As Shape

    i = 1

For Each sld In ActivePresentation.Slides
    For Each shp In sld.Shapes
    On Error Resume Next
        If ActivePresentation.Slides(i).SlideShowTransition.Hidden = msoFalse And shapeName(ActivePresentation.Slides(i), "NameofShapeonSlide") Then
            ActivePresentation.Slides(i).Export filenamepng & "SlideName" & i & ".png", "PNG"

        End If
    i = i + 1
    Next
Next