當前位置: 妍妍網 > 辦公

Word教程:用VBA程式碼批次調整一堆照片的大小

2024-03-15辦公

哈嘍~大家好呀!

今天要跟大家分享的案例是一位小夥伴工作上遇到的問題。

我們先來模擬小夥伴說的問題,開啟一份空白的Word文件,從插入索引標籤中找到圖片所在資料夾,全選圖片,批次插入到文件中。因為照片尺寸不統一,所以每頁存放圖片數量也是不一樣的。

圖片全部插入到文件中的效果如下圖。

大家可能會想到使用 F4 鍵進行重復設定圖片大小。

先選中一個圖片,點選滑鼠右鍵設定圖片大小和位置,取消釘選長寬比,高度和寬度設定一個自己期望大小的值。接著依次選中其他圖片按 F4 鍵就可以重復操作了(部份膝上型電腦可能需要按 Fn+F4 鍵)。只要你 F4鍵按的快,圖片批次處理剩下的就是時間問題。

如果要設定的圖片數量不多的話,按 F4 鍵一定是最優的選擇。但是小夥伴說她有一堆照片,這個一堆就非常過份了,於是我實在忍不了,站出來用 VBA來批次處理了。

操作方法如下:

從【開發工具】索引標籤中找到【Visual Basic】按鈕,單擊進入VBE 編輯器,插入模組,將下面的 VBA程式碼復制、貼上到模組中去,最後執行宏即可自動將文件中所有的圖片批次設定指定大小了。

分割線中間為 VBA程式碼內容。

Sub 指定圖片大小() '設定圖片大小

Dim n '圖片個數

On Error Resume Next '忽略錯誤

For n = 1 To ActiveDocument.InlineShapes.Count 'InlineShapes型別圖片

ActiveDocument.InlineShapes(n).Height = 400 '設定圖片高度為 400px

ActiveDocument.InlineShapes(n).Width = 300 '設定圖片寬度 300px

Next n

For n = 1 To ActiveDocument.Shapes.Count 'Shapes型別圖片

ActiveDocument.Shapes(n).Height = 400 '設定圖片高度為 400px

ActiveDocument.Shapes(n).Width = 300 '設定圖片寬度 300px

Next n

End Sub

如果想讓圖片等比例縮放可以使用下面的 VBA程式碼來處理:

Sub 等比例縮放圖片() '設定圖片大小

Dim n '圖片個數

Dim picwidth

Dim picheight

On Error Resume Next '忽略錯誤

For n = 1 To ActiveDocument.InlineShapes.Count 'InlineShapes型別圖片

picheight = ActiveDocument.InlineShapes(n).Height

picwidth = ActiveDocument.InlineShapes(n).Width

ActiveDocument.InlineShapes(n).Height = picheight * 0.5 '設定高度為0.5倍

ActiveDocument.InlineShapes(n).Width = picwidth * 0.5 '設定寬度為0.5倍

Next n

For n = 1 To ActiveDocument.Shapes.Count 'Shapes型別圖片

picheight = ActiveDocument.Shapes(n).Height

picwidth = ActiveDocument.Shapes(n).Width

ActiveDocument.Shapes(n).Height = picheight * 0.5 '設定高度為0.5倍

ActiveDocument.Shapes(n).Width = picwidth * 0.5 '設定寬度為0.5倍

Next n

End Sub

操作方法如下:

等比例縮放的程式碼和前面指定尺寸程式碼有什麽區別呢?

以演示素材中的西瓜圖片尺寸為例,調整後的圖片尺寸是調整前的 0.5倍。因此,這裏大家可以根據自己的實際需求靈活調整,比如等比例放大或者縮小圖片都是可以的。

好了,以上就是今天跟大家分享的內容,感謝大家耐心看完,希望大家能夠喜歡,別忘了分享哦~

另外,全套Word視訊教程,永久免費學習,還送練習課件!掃碼入群領取

長按二維碼添加加入群