如何快速往PPT中插入100張圖片,甚至更多的圖片嗎?既然是批量處理肯定不能依靠手工啦!利用宏編程可以快速實現!
實現目標:將100張圖片分別放到100頁幻燈片里。
首先準備好需要使用的圖片,將其保存在同一個文件夾中,文件名是有序的數字:1.jpg,2.jpg……,100.jpg
接著,將當前PPT文件和圖片們也保存在同一個文件夾中。
然后,在PPT里點擊菜單“工具→宏→宏”,打開“宏”窗口,給將要編寫的程序取個名。
之后鼠標點擊“創建”按鈕,即進入Visual Basic編輯器界面,編寫代碼。
Sub photos()
Dim i As Integer
For i = 2 To100
ActiveWindow.View.GotoSlide Index:=ActivePresentation.Slides.Add(Index:=i, Layout:=ppLayoutBlank).SlideIndex
ActivePresentation.Slides(i).Select
With ActiveWindow.Selection.SlideRange
.FollowMasterBackground = msoFalse
.Background.Fill.UserPicture i & ".jpg"
End With
Next
End Sub
解釋一下上面的代碼:
◆ 因為新建的PPT已經有一頁幻燈片了,所以循環語句從2開始,到100。
◆ 最長的那行代碼的作用是插入一頁幻燈片,ppLayoutBlank 表示插入的幻燈片是空白型的。
◆ Background所在的那行代碼,是將圖片作為幻燈片的背景圖。
上面的程序,新插入了99頁幻燈片,然后為每一頁幻燈片設置了背景圖片,并不是真的將圖片插入到幻燈片了。還有,第一張幻燈片并沒有被操作到,需要手動操作。
如果要確實是將圖片插入到幻燈片,那么上面的程序修改為如下:
Sub photos()
Dim i As Integer
For i = 2 To100
ActiveWindow.View.GotoSlide Index:=ActivePresentation.Slides.Add(Index:=i, Layout:=ppLayoutBlank).SlideIndex
ActivePresentation.Slides(i).Select
With ActiveWindow.Selection.SlideRange
ActiveWindow.Selection.SlideRange.Shapes.AddPicture(FileName:= i & ".JPG", LinkToFile:=msoFalse, SaveWithDocument:=msoTrue, Left:=173, Top:=129, Width:=574, Height:=481).Select
End With
Next
End Sub
注:圖片尺寸最后是一樣的,如果不是,那就要手動修改。