自学内容网 自学内容网

VBA批量插入图片到PPT,一页一图

Sub InsertPicturesIntoSlides()
    Dim pptApp As Object
    Dim pptPres As Object
    Dim pptSlide As Object
    Dim strFolderPath As String
    Dim strFileName As String
    Dim i As Integer
    
    ' 设置图片文件夹路径
    strFolderPath = "C:\您的图片文件夹路径\" ' 请替换为您的图片文件夹路径
    
    ' 获取文件夹中的第一个文件
    strFileName = Dir(strFolderPath & "*.jpg") ' 假设图片为jpg格式,如有需要请更改文件类型
    
    ' 检查是否有图片
    If strFileName = "" Then
        MsgBox "没有找到图片文件。"
        Exit Sub
    End If
    
    ' 创建PowerPoint应用对象
    Set pptApp = CreateObject("PowerPoint.Application")
    pptApp.Visible = True
    
    ' 添加新的演示文稿
    Set pptPres = pptApp.Presentations.Add
    
    i = 1 ' 初始化幻灯片编号
    
    ' 循环插入每张图片到新的幻灯片
    Do While strFileName <> ""
        ' 添加新的幻灯片
        Set pptSlide = pptPres.Slides.Add(i, ppLayoutBlank)
        
        ' 在新的幻灯片中插入图片
        With pptSlide.Shapes.AddPicture(FileName:=strFolderPath & strFileName, _
                                        LinkToFile:=msoFalse, _
                                        SaveWithDocument:=msoCTrue, _
                                        Left:=0, _
                                        Top:=0, _
                                        Width:=pptSlide.Master.Width, _
                                        Height:=pptSlide.Master.Height)
            .LockAspectRatio = msoTrue
        End With
        
        ' 获取下一个文件
        strFileName = Dir()
        i = i + 1
    Loop
    
    ' 清理
    Set pptSlide = Nothing
    Set pptPres = Nothing
    Set pptApp = Nothing
End Sub

注意“宏安全性”设置,改为启用和信任


原文地址:https://blog.csdn.net/xiaoxuonl/article/details/144803552

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!