宏与 VBA #
宏基础 #
什么是宏 #
text
宏是一系列 Word 命令的集合,可以:
├── 自动执行重复操作
├── 一键完成复杂任务
├── 提高工作效率
└── 减少人为错误
宏的本质:
└── 用 VBA (Visual Basic for Applications) 编写的程序代码
启用宏 #
text
文件 → 选项 → 信任中心 → 信任中心设置 → 宏设置
选项:
├── 禁用所有宏
├── 禁用所有宏,并发出通知
├── 禁用无数字签署的所有宏
└── 启用所有宏
录制宏 #
开始录制 #
text
视图 → 宏 → 录制宏
步骤:
1. 输入宏名称
2. 选择保存位置
├── 所有文档
└── 当前文档
3. 可选:分配按钮或快捷键
4. 点击确定开始录制
5. 执行要录制的操作
6. 停止录制
录制技巧 #
text
录制前准备:
├── 规划好操作步骤
├── 确保操作准确
└── 避免不必要的操作
录制中注意:
├── 只录制必要操作
├── 使用键盘快捷键更可靠
└── 避免依赖特定文本
运行宏 #
运行方法 #
text
方法一:功能区
└── 视图 → 宏 → 查看宏 → 运行
方法二:快捷键
└── 使用录制时分配的快捷键
方法三:按钮
└── 点击快速访问工具栏上的宏按钮
方法四:Alt+F8
└── 打开宏对话框选择运行
VBA 编辑器 #
打开 VBA 编辑器 #
text
快捷键:Alt+F11
或
开发工具 → Visual Basic
VBA 编辑器结构 #
text
┌─────────────────────────────────────────────────────────────────────────┐
│ VBA 编辑器 │
├─────────────────────────────────────────────────────────────────────────┤
│ 菜单栏 │
├─────────────────────────────────────────────────────────────────────────┤
│ ┌─────────────┐ ┌─────────────────────────────────────────────────┐ │
│ │ 工程资源 │ │ │ │
│ │ 管理器 │ │ 代码窗口 │ │
│ │ │ │ │ │
│ │ Project │ │ │ │
│ │ ├── Microsoft│ │ │ │
│ │ │ Word 对象│ │ │ │
│ │ ├── 模块 │ │ │ │
│ │ └── 类模块 │ │ │ │
│ └─────────────┘ └─────────────────────────────────────────────────┘ │
│ ┌─────────────────────────────────────────────────────────────────┐ │
│ │ 立即窗口 │ │
│ └─────────────────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────────────────┘
VBA 基础语法 #
基本结构 #
vba
Sub 宏名称()
' 代码注释
语句1
语句2
End Sub
常用对象 #
vba
Application ' Word 应用程序
Documents ' 文档集合
ActiveDocument ' 当前活动文档
Selection ' 当前选择
Range ' 文本范围
Paragraphs ' 段落集合
Tables ' 表格集合
常用操作示例 #
vba
' 插入文本
Selection.TypeText Text:="Hello World"
' 插入段落
Selection.TypeParagraph
' 选择全部内容
Selection.WholeStory
' 设置字体
Selection.Font.Name = "宋体"
Selection.Font.Size = 12
Selection.Font.Bold = True
' 保存文档
ActiveDocument.Save
' 打开文档
Documents.Open FileName:="C:\test.docx"
' 创建新文档
Documents.Add
实用宏示例 #
批量设置字体格式 #
vba
Sub SetFontFormat()
Selection.WholeStory
Selection.Font.Name = "宋体"
Selection.Font.Size = 12
Selection.ParagraphFormat.LineSpacing = 1.5
End Sub
批量删除空行 #
vba
Sub DeleteEmptyParagraphs()
Dim para As Paragraph
For Each para In ActiveDocument.Paragraphs
If Len(para.Range.Text) <= 1 Then
para.Range.Delete
End If
Next para
End Sub
下一步 #
掌握了宏与 VBA 后,接下来学习 审阅与修订,了解文档协作审阅功能。
最后更新:2026-04-11