WPS文字宏命令批量修改全文字体字号
使用WPS宏批量修改全文字体字号时,应先备份文档,在副本中确定正文范围,打开开发工具进入宏编辑器新建模块,粘贴代码并设置字体和字号,运行前在小范围测试,确认无误后执行全文,最后抽查各位置确保格式统一。
从实际操作的效率角度来说,用WPS文字批量调整全文字体字号,最稳妥的做法是先备份文档,再借助宏统一处理正文区域。整个流程并不复杂:先另存一份副本,然后调出开发工具,进入WPS宏编辑器,粘贴修改字体字号的宏代码,先在小范围内容上测试一下,确认无误后再跑整篇文档。
先在副本里确认要处理的正文范围
操作时,建议先另存一份副本,千万不要在原文件上直接跑宏。接着把段落标记调出来,仔细看看正文里有没有表格、页眉页脚、批注、目录这些特殊区域。宏天生适合处理普通正文段落,如果希望保留合同编号、封面标题、目录的原有格式,就得提前划好要改的范围,这样后面改代码才不会误伤不该动的内容。
打开开发工具里的宏入口
接下来,切换到WPS文字顶部的功能栏,找到「开发工具」标签,点击「查看代码」就能进入宏编辑器。如果顶部看不到开发工具,需要先去设置选项里把开发工具的显示开关勾上。这一步很关键,先确认入口能正常打开,别等代码都写完了,才发现当前WPS版本没开宏功能。
在宏编辑器中新建模块
进入WPS宏编辑器后,在左侧项目面板选中当前测试文档,新建一个模块。注意,不要直接把宏写到全局Normal模板里,否则以后打开其他文档时可能误运行,很容易出问题。等右侧代码区显示空白编辑框,就可以准备粘贴代码了。
粘贴批量修改字体和字号的代码
把下面这段宏代码粘贴到模块里,它会自动遍历所有正文段落,把字体统一改为宋体、字号改为四号,并且自动跳过空段落。你可以直接把代码中的「宋体」和「14」改成你需要的字体和字号磅值;四号字在VBA里通常对应14磅,小四对应12磅,别填错数值。
Sub ChangeBodyFontAndSize()
Dim p As Paragraph
For Each p In ActiveDocument.StoryRanges(wdMainTextStory).Paragraphs
If Len(Trim(Replace(p.Range.Text, Chr(13), ""))) > 0 Then
With p.Range.Font
.NameFarEast = "宋体"
.NameAscii = "Times New Roman"
.Size = 14
End With
End If
Next p
End Sub
如果只想改当前选中的部分内容,不需要遍历全文档,可以把代码里的ActiveDocument.StoryRanges(wdMainTextStory)换成Selection.Range,这样更安全。第一次运行之前,建议先复制两三段测试文字到空白文档里跑一遍,确认改完的字体字号符合预期,再用到正式文件上。
运行后抽查开头中间和末尾
宏跑完之后,先别急着直接覆盖保存。切回文档正文,抽查开头、中间、末尾三个位置,重点看所有正文是否都改成了目标字体字号,标题、表格、页眉页脚这些不该动的地方有没有被误改。如果发现改的范围不对,直接关掉当前副本不保存,回去调整宏的作用范围再重新运行即可。
确认所有正文格式都统一了,再保存副本。正式文件一定要留一份处理前的原版本,尤其是带目录、批注、页眉页脚的长文档。宏虽然能省掉大量重复调格式的功夫,但最怕作用范围没设对,先小范围测试,远比出问题之后再返工要省时间。
