Word或者WPS批量调整文中图片大小的快捷方法

文章目录


0、前言

不知道大家是不是也和我一样,经常需要在编写的Word(或者WPS)文档里插入大量的图片,但是这些图片的尺寸大小一般都不一样,有时甚至超出了页面范围,一张一张的调整图片大小来适合页面宽度或者满足版面美观的需要,那真是一件非常费力的事。有没有快捷的方法来取代这种费力不讨好的人工调整方式呢?经过我的一番学习,还终于找到了一个非常简单得方法,那就是编写VBA宏的方式,且代码仅仅几行!这下可以彻底解放我的眼睛和鼠标手了,无限的提高了写作效率。下面就来分享部署过程吧。


1、编写宏代码

当然得前提是你使用的Word或者WPS要有VBA模块才行,如果没有的话,也可以搜索安装VBA模块后使其具备VBA编程功能的。

任意打开一篇文档(或新建一篇文档),在【开发工具】菜单中找到【VB编辑器】,打开它。

然后在工程-Normal-项目下插入模块编写宏代码------相当于在常规模版中添加宏,这样就可以在所有的文档中均可以调出该宏,而不是只在当前文档中才能调用。

然后参照如下示例编写2个宏(示例中是否需要锁定纵横比、图片宽度和高度可根据需要调整)并保存:

Sub 批量调整图片高宽()

Dim iSha As InlineShape

For Each iSha In ActiveDocument.InlineShapes

If iSha.Type = wdInlineShapePicture Then

iSha.LockAspectRatio = msoFalse '不锁定纵横比

iSha.Width = CentimetersToPoints(15) '宽15CM,根据你的需要调整

iSha.Height = CentimetersToPoints(10) '高10CM

End If

Next

End Sub

Sub 批量设置图片等宽()

Dim iSha As InlineShape

For Each iSha In ActiveDocument.InlineShapes

If iSha.Type = wdInlineShapePicture Then

iSha.LockAspectRatio = msoTrue '锁定纵横比

iSha.Width = CentimetersToPoints(15) '宽15CM,一般情况下与页宽相协调,可根据你的需要调整修改

End If

Next

End Sub

2、在文档中调用宏实现一键批量调整

经过上述设置后,我们打开任意一篇包含图片的文章,点击【开发工具】菜单下的【VB宏】,会弹出下图类似的宏菜单,我们选择一个宏(比如【批量设置图片等宽】),然后再点击【运行】按钮。

文中的所有图片马上就按照宏中的15cm宽度进行自动调整了:


3、就这么简单!

相关推荐
lqz199313 小时前
根据html导出excel和word
html·word·excel
缺点内向17 小时前
C# 中 Word 文档目录的插入与删除指南
开发语言·c#·word·.net
诸神缄默不语2 天前
如何用Python处理文件:Word导出PDF & 如何用Python从Word中提取数据:以处理简历为例
python·pdf·word
初九之潜龙勿用2 天前
C# 操作Word模拟解析HTML标记输出带格式的文本
开发语言·c#·word·office
CHN悠远2 天前
飞腾D3000安装debian13后使用WPS的方法
wps
裤裤兔2 天前
利用VBA批处理word 文档,使用宏对docx文件内容进行批量替换
c#·word·.net··vba·office·宏操作
gc_22992 天前
学习C#调用FreeSpire.Doc包将Word转换为html
c#·html·word·freespire.doc
❀͜͡傀儡师3 天前
docker 安装WPS
docker·容器·wps
gc_22993 天前
学习C#调用Microsoft.Office.Interop.Word将Word转换为html
c#·html·word·interop.word
罗政3 天前
WPS Excel快速插入一批图片
excel·wps