如果离不开word,这个操作我劝你尽早学会
最近有不少朋友在问如何修改IBD Tools里的代码从而更加符合自己的使用需求,以及如何在里面增加新的功能。想了想,干脆写篇文章从最基本的概念写起,也方便大家从本质上理解IBD Tools是如何一步一步走到现在的。
IBD Tools本质上是一堆宏的集合,什么是宏?一看到这个词,可能有人想到的就是 VBA、代码和一大堆看不懂的英文。感觉这是给程序员准备的东西,普通人没必要碰。
Word的宏本质上来说就是代码,但对普通人而言还有一种简单得多的用法让它为我所用,叫作“录制宏”。
你只需要把一套操作完整地做一遍,Word 就能把它记下来。以后再遇到相同的任务,点一下按钮,或者按一个快捷键,它就会替你重新做一遍。
这个功能存在很多年了,却依然是 Word 里最容易被忽略的效率工具之一。
1
先从“楷体加粗”开始
拿IBD Tools里的一个功能举个例子——楷体加粗:选中一段文字,把字体改成楷体,然后加粗。

这件事手工操作并不复杂,选中文字,打开字体列表,找到楷体,再点击加粗,一套操作下来也就几秒钟。
问题是,在特定情况下有可能需要一天操作好多次。
每次花的时间不多,却要不断停下正在进行的编辑,移动鼠标、寻找字体、确认格式,然后再回到正文。
这种步骤明确、结果固定、又需要反复执行的操作,正好适合交给宏。
当然,如果“楷体加粗”代表一种固定的标题、引文或者正文格式,那么使用Word的“样式”会更加规范,后期也方便统一修改。这里选择这个简单例子,主要是为了说明录制宏的方法。真正使用时,一个宏完全可以包含更多操作。
我们先在文档里输入一段测试文字,并把它选中。
这里有一个关键点:我们要录制的是“对当前选区应用楷体和加粗”,而不需要把“选择哪段文字”也录进去。所以要先选中文字,再开始录制。
Word 的宏录制器不会记录使用鼠标拖动选择文字的动作。如果确实需要在录制过程中改变选区,应当使用键盘完成。不过这个例子不需要这么做,因为文字已经提前选好了。
接下来打开 Word 的“开发工具”选项卡(如果没有,就先去 word 选项-自定义功能区里给它打上勾),点击“录制宏”。

Word会让你给宏起一个名字。宏名称里不能有空格,所以可以命名为 KaitiBold。名字不必多么标准,自己以后能看懂就行。

下面还有一个很容易被忽略的选项,叫作“将宏保存在”。
如果希望这个宏在其他文档中也能使用,应当选择“所有文档(Normal.dotm)”。这样,这台电脑上的Word在打开其他文档时,也能调用这个宏。如果保存在当前文档里,它通常只能随该文档使用。
确认之后,Word开始录制。
这时尽量不要做其他无关操作,直接把选中的文字设置为楷体,再点击加粗。完成后重新打开“开发工具”,选择“停止录制”。
一个最简单的宏就做好了。
此时,可以找另一段普通文字试一下。先选中文字,再打开“开发工具—宏”,找到刚才的KaitiBold,点击“运行”。
如果一切正常,选中的文字会立即变成楷体并加粗。
整个过程没有要求你从头编写代码。你只是把这件事做了一遍,然后 Word 帮你把操作记录了下来。
不过,加粗还有一个不太容易被注意到的小问题。
Word录制宏时,有时会把点击“加粗”按钮记录为“切换加粗状态”。这意味着普通文字会变成粗体,但如果选中的文字原本已经加粗,再运行一次宏,反而可能取消加粗。
如果希望这个宏无论面对什么文字,都明确设置为粗体,可以在“开发工具-宏”窗口中选中KaitiBold,点击“编辑”。找到类似Selection.Font.Bold = wdToggle的一行,把其中的wdToggle 改成 True。
也就是改成:
Selection.Font.Bold = True
这只是一处很小的调整,却能让宏的结果更加稳定。如果录制出来的代码本身已经是 True,就不需要再改。
2
别让录好的宏躺在菜单里
做到这里还不算结束。
如果每次使用都要打开“开发工具—宏”,再从列表里找一遍,和我们想要的“一键完成”还有点距离。
我更建议把常用宏放到Word的快速访问工具栏里。
打开“文件—选项—快速访问工具栏”,把“从下列位置选择命令”切换成“宏”,就能看到刚刚创建的KaitiBold。选中它,点击“添加”,这个宏便会出现在Word窗口上方的快速访问工具栏里。

如果默认名称太长,还可以点击“修改”,换一个容易辨认的图标,并把显示名称改成“楷体加粗”。
以后再遇到同样的任务,只需要选中文字,然后点一下这个按钮。
如果这个操作使用得特别频繁,还可以给它设置快捷键。
进入“文件—选项—自定义功能区”,在窗口下方找到“键盘快捷方式”,点击旁边的“自定义”。然后在类别中选择“宏”,找到KaitiBold,为它分配一个顺手的组合键。
例如可以使用Ctrl + Alt + K。分配之前最好看一下这个组合键是否已经有其他用途,不要覆盖自己常用的Word命令,也要留意输入法或其他软件是否占用了同一个组合键。不单独设置快捷键也行,只要把按钮放进快速访问工具栏里,根据按钮的顺序会自动对应Alt+1\2\3……的快捷键。

设置完成之后,这套操作只剩下两步:选中文字,按下快捷键或点击按钮。
工具栏按钮比较直观,适合偶尔使用或者记不住快捷键的人;快捷键更快,适合每天都要重复很多次的操作。对使用频率特别高的宏,我通常会把两种入口都保留下来。
3
当你第三次做同一件事时
“楷体加粗”本身并不是一个多么复杂费时的功能。即使没有宏,我们当然也能完成。
但这个例子背后,藏着一种很重要的工作习惯。
很多人使用Word时,遇到一个问题就手动处理一次。下次再遇到,再重新处理一次。即使同一套操作已经重复了几十遍,也很少停下来想一想:我能不能只做一次,然后把它做成一个工具复用?
慢慢地,你会发现,自己看待重复操作的方式变了。
以后在Word里反复执行一项任务时,可以多想一步:这件事是不是经常出现?每次的操作步骤是不是基本相同?执行过程中是不是不需要临时作出复杂判断?
如果答案都是肯定的,它就很可能适合录制成宏。
设置固定的字体、字号和段落间距,可以录制成宏;调整表格的字体、边框和对齐方式,可以尝试录制成宏;插入固定的签名、说明文字或者一套常用版式,也可以交给宏完成。
如果任务需要根据内容作出不同判断,需要循环处理大量段落或多个文档,或者中间存在很多例外情况,单纯录制操作就不一定够用了。这时才需要进一步修改VBA代码。
但没有必要一开始就考虑得那么复杂。
先把最简单、最稳定、出现频率最高的操作录制下来,放进快速访问工具栏,或者给它设置一个自己记得住的快捷键。
说实话,IBD Tools的功能最开始就是这样一个一个做出来的。
我现在判断一项操作是否值得做成工具,有一个很简单的标准:
当我第三次做同一件事时,就会停下来想一想,这件事以后是不是还会出现。
如果答案是会,那就不应该继续一遍遍手动完成。
从一个“楷体加粗”开始,每发现一项重复工作,就给自己的Word增加一个按钮。
时间久了,你使用的就不再是刚安装时那个千篇一律的Word,而是一套按照自己的工作习惯,慢慢搭建出来的生产力工具。
夜雨聆风