Word批量更改图片环绕方式与尺寸大小

前提:一份Word文档里面有100张图片,有大有小,需要将100张图片更改为统一大小,宽度与高度均为5厘米,同时环绕方式也需要改成四周型。

 

 

 

 

 

默认Word图片的默认环绕方式为嵌入型,需要统一更改为四周型,然后才能批量更改大小,而批量更改大小方式需要使用VBA代码。

第一步:打开 Word 文档,并按下 Alt + F11 键(笔记本电脑按alt+fn+f11),打开 Visual Basic for Applications (VBA) 编辑器。在 VBA 编辑器中,选择 "插入" -> "模块",创建一个新的模块,如下图所示输入对应的代码。

 

第二步:在(VBA) 编辑器输入对应的过程代码:

VBA代码:

' 作用:循环遍历所有的环绕方式为嵌入型图片,将其更改为四周型

 

Sub ConvertInlineToSquareWrap()

Dim pic As InlineShape

 

' 循环遍历所有的嵌入型图片

For Each pic In ActiveDocument.InlineShapes

' 检查是否为图片类型

If pic.Type = wdInlineShapePicture Then

' 设置为四周型

pic.Select

Selection.ShapeRange.WrapFormat.Type = wdWrapSquare

End If

Next pic

End Sub

 

VBA代码:

 

' 作用:更改图片大小(对环绕方式为四周型或上下型起作用,如果是嵌入型不起作用)

Sub ResizeImages()

Dim shp As Shape

 

' 更改下面的宽度和高度为所需的尺寸(以厘米为单位)

Dim targetWidth As Single

targetWidth = CentimetersToPoints(5) ' 例如,将图片宽度调整为5厘米

Dim targetHeight As Single

targetHeight = CentimetersToPoints(5) ' 例如,将图片高度调整为5厘米

 

' 循环处理文档中的所有图片

For Each shp In ActiveDocument.Shapes

If shp.Type = msoPicture Then

' 更改图片大小

shp.LockAspectRatio = msoFalse

shp.Width = targetWidth

shp.Height = targetHeight

End If

Next shp

End Sub

 

说明:在 targetWidth = CentimetersToPoints(5) ,这个地方可以更改对应的最终目标图片的宽度; targetHeight = CentimetersToPoints(5) 可以更改对应的最终目标图片的高度;

运行宏:在 VBA 编辑器中,选择 "运行" -> "运行子过程",或按下 F5 键。

第三步:关闭VBA 编辑器回到Word中,选择 "开发工具" -> "宏",在弹出的宏对话框,如下图所示,宏对话框列表就会出现创建的过程,依次选定单击运行即可批量更改图片大小。

 

http://www.dushuwu.net/?570.html