坑边闲话:稍微有点编程基础的小伙伴,对程序中的变量一定不会陌生。那么我们能否把变量这个概念用到 Microsoft Word 里面呢?

这篇文章的难度并不高,但是技术含量还是挺高的,一般小白很少知道这项功能。

1. 为什么要用 Word 变量·

本文所指的 Microsoft Word (下称 Word) 中的变量,不强调让变量参与运算,而是希望能用这个量进行页面呈现。举个例子,我们在 Word 中打了这么一段话:

张三写了一篇文章,过了几天,张三感觉不太满意,于是他把文章修改了一遍。过了一个月,张三把文章发表在了《人民日报》上面。

上面这段话中,张三总共出现了 3 次,如果有一天,你想把这段话改改,套到另一个作者——如李四——身上,那么你要么进行全局替换,要么一个一个改掉,但是全局替换有风险,如果文章中还有这种句子:

他的作品的稿费是论页算钱,一张三块钱

上述这种句子,张三并不是作者名,而是两个词的开头和结尾,如果这个张三被全局替换,就会出现

他的作品的稿费是论页算钱,一李四块钱

这种令人啼笑皆非的乌龙。所以全局替换并不安全,也不完美。

我们需要一种强大的工具,就像控制程序中的变量一样,说让真正的张三变成李四,就会完美地完成转变。

2. 启用 Word 开发工具·

Word 开发工具需要在选项中启用,在选项中勾选即可。

图 1. 勾选开发工具之后,即可在菜单栏中看到图 2.

图 2. 我们重点关注 XML 映射窗格这个选项。

Word 开发工具面板非常重要,是整个 Word 的后台,利用好了域代码和 Word 开发工具,才真正意味着你进入了 Word 高级阶段。

3. 创建一个 XML 文件·

接下来,我们创建一个 .xml 纯文本文件,里面这样写:

1
2
3
4
5
6
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<DemoXMLNode xmlns="test">
<AuthorName></AuthorName>
<Title></Title>
<Date></Date>
</DemoXMLNode>

上面这段简单的代码定义了三个变量:AuthorNameTitleData,我们将会在 Word 中用到这个 XML 文件,其中的三个变量也正是我们所需要的。

图 3. 通过这种方式,可以将 XML 文件导入 Word.

4. 引用变量·

在图 3 所示的导入完成之后,我们就可以在 Word 中进行变量引用了。

这个过程其实很类似控件导入,当然,控件导入也是一个藏得很深的技能。

图 4. 通过右键单击 XML 部件名,我们就可以进行选取插入的范畴,作者名和标题名插入为纯文本,日期插入为“日期选取器”。

之后我们把这 3 个控件复制到需要用到的地方。

图 5. 这个图可能看不到快捷键,它们分别是在图形控件左上角 Ctrl + C 进行复制,然后在目标区域 Ctrl + V 进行粘贴。

到了这里,我们就完成了变量布局。

5. 使用变量·

有了上述操作,我们就可以直接单击这些同类控件中的一个进行编辑,其他的同类控件“字面量”一并跟着改。

图 6. 修改一个,其他全改,这就是变量的意义。如果你要再次修改,直接重复该操作即可。

总结·

初看这个技能好像没什么用,但是在一些模板制作过程中,该过程将会变得相当有用。像我一样的学生党,经常一个学期写若干个报告,在这个过程中要保证报告格式一致,内容规范,我就会先花点时间搞一个模板出来,里面的课程名报告主题文档性质都是可以一键编辑的,只要做好了实验,写个报告几乎是 $O(1)$ 的时间复杂度,非常高效。