宏命令将图片批量替换成统一大小
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
宏命令将图片批量替换成统一大小
步骤:
1.点击【文件】-【选项】,在弹出的窗口中选择【自定义功能区】,勾选开发工具选项后,点击【确定】,如下图:
2.会在菜单上方出现开发工具的相关功能菜单,选择【开发工具】,点击【宏】,如下图:
3.点击【宏】后,弹出提示框,在宏名处输入宏名“setpicsize”点击创建按钮,如下图:
4.在弹出的VBA窗口中将如下代码复制到其中,如下图:
统一替换图片大小的VBA代码如下(单引号后面的内容为备注):
'1.改变图片大于14.5cm的宽度
'注:高跟宽的数值单位为px,而word中的单位为cm(1px约等于0.0352cm)
Sub setpicsize()
Dim j '计数图片个数
For j = 1 To ActiveDocument.InlineShapes.Count '文件中图片总个数,图片类型为inlineshapes
picheight = ActiveDocument.InlineShapes(j).Height '高度赋值
picwidth = ActiveDocument.InlineShapes(j).Width '宽度赋值
If (ActiveDocument.InlineShapes(j).Width > 375 And ActiveDocument.InlineShapes(j).Width < 415) Then '判断图片宽度范围,将宽度大于13.23cm的图片,小于14.68的图片统一缩放
ActiveDocument.InlineShapes(j).Range.ParagraphFormat.Alignment = wdAlignParagraphCenter '图片居中
ActiveDocument.InlineShapes(j).Width = 411 '设置宽度为411px,约14.5cm ActiveDocument.InlineShapes(j).Height = picheight * (411 / picwidth) '设置图片高度,根据设置的宽度值等比例缩放图片高度
ElseIf (ActiveDocument.InlineShapes(j).Width > 417) Then '判断图片宽度范围,将宽度大于14.7cm的图片统一缩放
ActiveDocument.InlineShapes(j).Range.ParagraphFormat.Alignment = wdAlignParagraphCenter '图片居中
ActiveDocument.InlineShapes(j).Width = 411 '设置宽度为411px,约14.5cm ActiveDocument.InlineShapes(j).Height = picheight * (411 / picwidth) '设置图片高度,根据设置的宽度值等比例缩放图片高度
End If
Next j
End Sub
注意:
(1)修改图片尺寸时,代码运行前需要根据实际情况进行修改图片尺寸的大小范围限制代码,图中标注处所示
(2)修改图片尺寸时,需计算修改的图片的宽高值,因为图片的高跟宽的数值单位为px,而word中的单位为cm,根据每台电脑不同的分辨率,1px约等于0.0352cm (3)图片替换之前文档最好先保存副本,因为运行宏后的文档无法撤销操作,如果操作错误,只能通过关闭文档时,选择不保存后,重新打开
(4)代码可用英文状态下的单上引号进行备注,删掉不影响代码的运行
(5)如修改图片尺寸的代码无需修改,可直接在点击【宏】后,在弹出提示框中选择宏名“setpicsize”,点击运行按钮进行操作
(6)一次性修改的文档中图片过多时,文档会未响应一小段时间,请耐心等待即可5.点击运行按钮,运行统一替换图片尺寸代码