用于将 Word 论文快速整理为山东中医药大学论文格式的 VBA 宏项目。
运行宏前,请先备份文档。
原因:
- 宏会直接修改 Word 文档内容和格式
- 运行后通常不能可靠地通过
Ctrl + Z完整撤回 - 尤其是目录、分页、分节、页码、参考文献排序这类操作,建议一定在副本上先测试
建议做法:
- 先复制一份论文文档副本。
- 在副本上运行宏。
- 检查结果无误后,再决定是否覆盖原文档。
大多数情况下,你只需要运行一个宏:
FormatThesisToSDUTCM
它会自动处理:
- 页面设置
- 标题格式
- 正文格式
- 摘要和关键词
- 目录
- 参考文献
- 图片与图题
- 页码 目录前为罗马数字,目录后为阿拉伯数字
- 打开你的 Word 文档。
- 按
Alt + F11打开 VBA 编辑器。 - 在 VBA 编辑器顶部菜单中选择“插入” -> “模块”。
- 打开仓库中的
format_macro.bas。 - 将其中内容复制到新建模块中。
- 如需长期保留宏,建议保存为
.docm。 如果只是当前会话临时运行,不立即保存也可以。
- 回到 Word。
- 按
Alt + F8打开宏列表。 - 选择
FormatThesisToSDUTCM。 - 点击“运行”。
运行 FormatThesisToSDUTCM 后,程序会按顺序完成以下工作:
- 设置 A4 页面和行距。
- 统一题目、一级标题、二级标题、三级标题格式。
- 统一正文格式。
- 处理摘要和关键词。
- 处理目录。 如果已有目录域,会更新目录并统一目录标题。 如果没有目录域,但有“目录”标题,会按“目录”位置插入目录。
- 处理参考文献。 默认包含排序。
- 处理图片和图题。
- 设置页码。 目录前为罗马数字,目录后为阿拉伯数字。
默认主入口宏(FormatThesisToSDUTCM)使用的是混合页码:
- 目录前:罗马数字
- 目录后:阿拉伯数字,从
1开始
如果你不想使用混合页码,而是希望全文都用阿拉伯数字,可以在运行 FormatThesisToSDUTCM 结束后,再单独运行:
ApplyArabicPageNumbersOnly
如果你只想单独重设混合页码,也可以单独运行:
ApplyMixedPageNumbersByTOC
为了让宏识别得更稳定,建议文档尽量满足下面几点:
- 题目使用
标题样式。 - 正文章节标题尽量使用:
标题 1/标题 2/标题 3或Heading 1/Heading 2/Heading 3 - 正文尽量使用:
正文文本、正文、Normal、First Paragraph - 目录部分最好满足下面两种情况之一:
- 已经有 Word 目录域
- 文中有单独一行“目录”
- 参考文献部分最好以“参考文献”或
References开头。
建议这样使用:
- 先把论文内容基本写完。
- 确认标题样式尽量正确。
- 如果需要目录,保证文中已有目录域,或者保留单独一行“目录”。
- 先备份文档。
- 运行
FormatThesisToSDUTCM。 - 检查目录、页码和参考文献是否符合你的具体要求。
通常是因为文档中既没有已有目录域,也没有单独一行“目录”。
解决方法:
- 先在文中放一行单独的“目录”,再运行
FormatThesisToSDUTCM - 或者先手动插入一次 Word 目录,再运行
FormatThesisToSDUTCM
通常是因为这些段落没有使用正确的标题样式。
建议先检查它们是否使用了:
标题标题 1/标题 2/标题 3- 或
Heading 1/Heading 2/Heading 3
一般不需要。
默认运行 FormatThesisToSDUTCM 时,就已经会自动应用混合页码。
只有当你想改成“全文阿拉伯数字页码”时,才需要再运行:
ApplyArabicPageNumbersOnly
可以,但仍建议先备份文档再运行。
目前已经尽量按可重复运行的方式处理,正常情况下再次运行不会不断重复插入目录或页码结构;但由于 Word 文档结构差异较大,复杂文档仍建议先在副本上测试。
这是 Word 宏的常见限制之一。
宏会批量修改格式、目录、分节、分页和页码,运行后通常不能像普通手动编辑那样可靠地使用 Ctrl + Z 完整撤销。
因此请务必在运行前备份文档。
当前规则是“基础规范”,仍建议人工微调
format_macro.bas主宏文件FORMAT_SPEC.md格式目标说明MACRO_REFERENCE.md宏与函数说明LICENSEMIT 许可证
- 提供
.docm一键使用版本 - 增强参考文献识别能力
- 支持更多心理学期刊模板
如果你发现:
- 格式不符合学校要求
- 某些文档处理异常
欢迎:
- 提 issue
- 或直接联系我