本文记录常用的word vba宏1. 设置所有图片Sub所有图片设为题注样式() 核心功能查找文档中所有图片为其应用「题注」样式 必要清除查找/替换的残留格式保障稳定性Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting 设置替换格式为「题注」样式Selection.Find.Replacement.StyleActiveDocument.Styles(题注)WithSelection.Find .Text^g 查找所有图片.Replacement.Text^ 保留图片关键避免删除.ForwardTrue.WrapwdFindContinue .FormatTrue 启用格式替换应用题注样式必须开EndWith 批量执行替换实际是应用样式Selection.Find.Execute Replace:wdReplaceAll MsgBox已为所有图片应用题注样式,vbInformationEndSubSub一键清空查找替换格式() 核心功能清空 Word 查找/替换功能中所有预设的格式 无需选中文本运行即清空和手动点「清除格式」按钮效果一致On ErrorResumeNext 防止特殊场景下报错 核心操作清空查找替换格式 方式1基于当前文档范围不依赖光标推荐ActiveDocument.Content.Find.ClearFormatting ActiveDocument.Content.Find.Replacement.ClearFormatting 方式2额外清空 Selection 层面双重保障Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting 提示操作完成MsgBox查找/替换的所有预设格式已清空,vbInformation,操作完成On ErrorGoTo0 恢复错误处理EndSub2. 选择所有表格、所有表格首行Sub选中所有的表格()Dim表格AsTable 步骤1全局锁死——删除所有用户的编辑权限文档变为只读ActiveDocument.DeleteAllEditableRanges(-1) 步骤2局部解锁——遍历所有表格仅给表格添加编辑权限For Each表格InActiveDocument.Tables 表格.Range.Editors.Add(-1)Next 步骤3选中目标——选中所有解锁的区域即所有表格ActiveDocument.SelectAllEditableRanges(-1) 步骤4清理权限——再次删除编辑权限避免文档残留限制ActiveDocument.DeleteAllEditableRanges(-1)EndSubSub选中所有的表格首行()Dim表格AsTable 步骤1全局锁死ActiveDocument.DeleteAllEditableRanges(-1) 步骤2局部解锁——仅解锁表格首行For Each表格InActiveDocument.Tables 表格.Cell(1,1).Select 定位到表格第一行第一列Selection.SelectRow 扩展选中整行Selection.Range.Editors.Add(-1) 给首行添加编辑权限Next 步骤3选中目标ActiveDocument.SelectAllEditableRanges(-1) 步骤4清理权限ActiveDocument.DeleteAllEditableRanges(-1)EndSub设置所有首行的格式Sub设置所有表格首行格式() 声明变量定义一个名为「表格」的变量用于存储单个表格对象Dim表格AsTable 步骤1全局锁死文档 删除所有用户的编辑权限使整个文档变为只读状态避免操作时选中无关内容ActiveDocument.DeleteAllEditableRanges(-1) 步骤2遍历文档中所有表格核心循环 逐个处理文档里的每一个表格无遗漏、无重复For Each表格InActiveDocument.Tables 2.1 定位表格首行选中表格第一行第一列单元格表格.Cell(1,1).Select 2.2 扩展选中范围将选中区域扩展到当前单元格所在的整行即表格首行Selection.SelectRow 2.3 解锁首行给选中的首行添加编辑权限确保格式可修改Selection.Range.Editors.Add(-1) 2.4 设置首行底纹格式完全沿用录制的参数Selection.Shading.TexturewdTextureNone 底纹无纹理仅显示纯色Selection.Shading.ForegroundPatternColorwdColorAutomatic 前景色设为自动不影响底纹Selection.Shading.BackgroundPatternColor12611584 底纹背景色你指定的蓝色值 2.5 设置首行字体格式按需求精准配置Selection.Font.Name黑体 字体类型黑体Selection.Font.Size12 字号小四Word中小四固定对应14磅Selection.Font.ColorwdColorWhite 字体颜色白色与蓝色底纹形成对比Next 循环结束处理下一个表格 步骤3验证效果 选中所有解锁的区域即所有表格首行直观查看格式设置效果ActiveDocument.SelectAllEditableRanges(-1) 步骤4清理权限 再次删除所有编辑权限恢复文档至无权限限制的原始状态避免残留限制ActiveDocument.DeleteAllEditableRanges(-1)EndSub