① Word圖片插入技巧:用VBA代碼批量調整圖片尺寸
本文將詳細闡述如何利用VBA代碼在Word文檔中批量調整圖片尺寸,解決圖片尺寸不統一導致的布局問題。
首先,模擬一個常見的工作場景,打開Word文檔,插入圖片文件夾中的圖片。由於圖片尺寸多樣,圖片數量隨頁面不同而變化。此步驟完成後,圖片在文檔中的顯示效果如圖所示。
為了解決批量調整圖片尺寸的問題,我們可以通過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
該代碼段實現了將文檔中所有圖片尺寸統一為400px高和300px寬。對於需要等比例縮放的場景,可以使用以下代碼:
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
通過調整代碼中的倍數值,可以實現等比例放大或縮小圖片尺寸,以適應不同布局需求。
通過上述方法,可以高效、便捷地在Word文檔中批量調整圖片尺寸,從而優化文檔的視覺效果和布局,提升工作效率。同時,VBA代碼的靈活性也使得用戶可以根據實際需求進行調整,滿足更多個性化需求。
② 如何通過「宏」批量完成word中所有圖片大小的修改並且讓圖片安排原來順序排列
1、Alt+F8調出宏編輯窗口 x0dx0a2、點創建按鈕,創建新宏,setpicsize,內容如下: x0dx0aSub setpicsize() x0dx0a'設置圖片大小 x0dx0a' 宏在 2008-3-31 由 hero_thm 錄制 x0dx0a' x0dx0aDim j '計數圖片個數 x0dx0aFor j = 1 To ActiveDocument.InlineShapes.Count '文件中圖片總個數,圖片類型為inlineshapes x0dx0aActiveDocument.InlineShapes(j).Height = 362 '設置高度 x0dx0aActiveDocument.InlineShapes(j).Width = 481.87 '設置寬度 x0dx0aNext j x0dx0ax0dx0aEnd Sub x0dx0a3、保存退出,點運行setpicsize宏,word中所有的圖片統一調整為寬17cm,高12.77cmx0dx0aSub setpicsize()x0dx0a'設置圖片大小x0dx0a' 宏在 2008-3-31 由 hero_thm 錄制x0dx0a'x0dx0aDim j '計數圖片個數x0dx0aFor j = 1 To ActiveDocument.InlineShapes.Count '文件中圖片總個數,圖片類型為inlineshapesx0dx0aIf ActiveDocument.InlineShapes(j).Width > 480 Thenx0dx0aActiveDocument.InlineShapes(j).Width = 400 '設置寬度x0dx0aEnd Ifx0dx0aNext jx0dx0aEnd Sub
③ word批量處理圖片尺寸及圖片居中(宏)
在日常的辦公中,我們常常需要在Word文檔中插入大量的圖片,但是圖片尺寸各異可能會影響到版面的視覺效果。這里有一個簡單且實用的方法,通過使用Word的宏功能,可以快速批量調整圖片尺寸和位置,提升工作效率。下面是具體步驟:
首先,進入Word文檔,確保你已經打開了"開發工具"選項卡,這是進行宏操作的必要工具。
接著,找到並打開宏編輯器。如果你不知道如何操作,可以使用快捷鍵ALT+F11直接打開它。
在宏編輯器中,你需要編寫或修改宏代碼。這里,你可以參考以下模板:
xml
Sub ResizeAndCenterImages()
Dim rng As Range
Set rng = ActiveDocument.InlineShapes范圍
' 1. 遍歷所有圖片
For Each shape In rng
' 2. 獲取圖片尺寸並調整
shape.Width = ' 你的新寬度
shape.Height = ' 你的新高度
' 3. 圖片居中對齊
shape.LockAspectRatio = msoFalse ' 確保圖片按比例縮放
shape.Left = shape.Range.InlineParaFormat.Alignment ' 設置水平居中
shape.Top = shape.Range.InlineParaFormat.Alignment ' 設置垂直居中
Next shape
' 4. 宏執行完畢
MsgBox "圖片尺寸調整和居中已完成!"
End Sub
記得替換代碼中的' 你的新寬度' 和 ' 你的新高度' 為實際需要的尺寸。然後,保存並運行宏,你就會看到圖片已經按照指定尺寸並居中對齊了。
通過這個方法,你可以輕松處理文檔中的圖片問題,使版面更加整潔美觀。
④ Word中批量修改圖片大小和縮放比例方法
最近小編遇到一個問題:需要將一篇word文檔中的所有圖片全部縮小比例。一張張改太麻煩了。於是從網上搜羅了一下,還真找到了解決辦法。需要注意的地方 就是注意厘米與像素的換算關系。一般情況下1厘米=28px 。這個換算關系其實可以用計算器計算出來。計算公式為圖片改變之後的像素除以改變之後圖片的大小厘米。
固定長寬篇
這部分要說的是把word中的所有圖片修改成固定的並且相同的長和寬!
1、打開word,工具-宏-宏(或者直接按Alt+F8)進入宏的界面,如下面所示,輸入一個宏名,宏名自己起,能記住就行!
2、宏名起好了,單擊「創建」進入Visual Basic 編輯器,輸入如下代碼並保存
Sub setpicsize() '設置圖片大小
Dim n '圖片個數
On Error Resume Next '忽略錯誤
Forn = 1 ToActiveDocument.InlineShapes.Count 'InlineShapes類型圖片
ActiveDocument.InlineShapes(n).Height = 400 '設置圖片高度為 400px
ActiveDocument.InlineShapes(n).Width = 300 '設置圖片寬度 300px
Nextn
Forn = 1 ToActiveDocument.Shapes.Count 'Shapes類型圖片
ActiveDocument.Shapes(n).Height = 400 '設置圖片高度為 400px
ActiveDocument.Shapes(n).Width = 300 '設置圖片寬度 300px
Nextn
End Sub
3、返回word,工具-宏-宏(或者直接按Alt+F8),再次進入宏的界面,選擇剛才編輯好的宏,並單擊「運行」按鈕,就可以了!(圖片多時,可能會花一些時間)
按比例縮放篇
這部分要說的是把word中的所有圖片按比例縮放!
具體操作同上,只是代碼部分稍做修改,代碼如下:
Sub setpicsize() '設置圖片大小
Dim n '圖片個數
Dimpicwidth
Dimpicheight
On Error Resume Next '忽略錯誤
For n = 1 ToActiveDocument.InlineShapes.Count 'InlineShapes類型圖片
picheight = ActiveDocument.InlineShapes(n).Height
picwidth = ActiveDocument.InlineShapes(n).Width
ActiveDocument.InlineShapes(n).Height = picheight * 1.1 '設置高度為1.1倍
ActiveDocument.InlineShapes(n).Width = picwidth * 1.1 '設置寬度為1.1倍
Nextn
For n = 1 To ActiveDocument.Shapes.Count 'Shapes類型圖片
picheight = ActiveDocument.Shapes(n).Height
picwidth = ActiveDocument.Shapes(n).Width
ActiveDocument.Shapes(n).Height = picheight * 1.1 '設置高度為1.1倍
ActiveDocument.Shapes(n).Width = picwidth * 1.1 '設置寬度為1.1倍
Nextn
End Sub
若還想使所有圖片居中對齊,可在循環中加入下面的語句:
ActiveDocument.InlineShapes(n).Range.ParagraphFormat.Alignment= wdAlignParagraphCenter
『左對齊:wdAlignParagraphLeft
注意:這里的Shapes(InlineShapes)不僅僅是指圖片,也包含其它的,自選圖形、任意多邊形、OLE 對象、ActiveX 控制項、圖片等。
⑤ word在用宏批量設置圖片大小
最近發現,以前存了很多圖片在word,但圖片的很大,有的很小,規格都不一樣,堆在文檔裡面很難看,為了美觀,下面給大家分享Word中利用宏批量設置圖片大小的操作方法,歡迎大家來到學習。
Word用宏批量設置圖片大小的方法
大家看看我是怎麼樣利用宏批量修改word中所有圖片大小,
先打開存有圖片的word。
在打開的文檔中,選擇在「工具」菜單中選擇「宏」–「宏」。
隨後彈出「宏」對話框,在宏名中輸入setpicsize。
宏名起好了,單擊「創建」按鈕進入Visual Basic 編輯器,輸入如下代碼
Sub setpicsize() '設置圖片大小Dim n '圖片個數On Error Resume Next '忽略錯誤For n = 1 To ActiveDocument.InlineShapes.Count 'InlineShapes類型圖片ActiveDocument.InlineShapes(n).Height = 400 '設置圖片高度為 400pxActiveDocument.InlineShapes(n).Width = 300 '設置圖片寬度 300pxNext nFor n = 1 To ActiveDocument.Shapes.Count 'Shapes類型圖片ActiveDocument.Shapes(n).Height = 400 '設置圖片高度為 400pxActiveDocument.Shapes(n).Width = 300 '設置圖片寬度 300pxNext nEnd Sub
關閉入Visual Basic 編輯器,返回word,重新選擇「工具」–「宏」–「宏」(或者直接按Alt+F8),再次進入宏的界面,在彈出的宏名中選擇"setpicsize",最後點擊「運行」—確認即可快速地批量修改word中所有圖片大小,注意這里把圖片大小都修改成Height = 400,Width = 300,這個規格大家可以需要改變的~