描述:每天要做表格,每个表格要插入五张照片。固定大小,一张张修改很麻烦,能有快捷的方法嘛?我想把图片大小设置成5.48cm
解决:按alt+F11。然后在project右键插入模块,然后粘贴
Sub Macro()
Mywidth = 4.13
Myheigth = 5.48
For Each iShape In ActiveDocument.InlineShapes
iShape.Height = 28.345 * Myheigth
iShape.Width = 28.345 * Mywidth
Next iShape
End Sub
再按F5,就行了。
其中Mywidth = 4.13,Myheigth = 5.48这里的数字你自己改大小。
固定长宽方法:
1、打开word,工具-宏-宏(或者直接按Alt+F8)进入宏的界面,如下面所示,输入一个宏名,宏名自己起,能记住就行!
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
按比例缩放方法
这部分要说的是把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批量修改图片大小的方法就是这样的了,这两种方法各有千秋,大家可以根据情况自行选择哦!