如果Word文档包含各种文本框,执行字数统计(选择菜单“工具”→“字数统计”)时,文本框里面的文字不会计算在内,属于Word统计功能的“死角”。要是只想统计一下某个文本框的字数,解决办法是先选中本文框,然后再执行字数统计,这时Word只计算文本框内的字数,文档其余内容的字数被忽略。
但是,这种选定文本框再统计字数的办法有时候也可能无能为力。如果有多个定义成组的文本框,即使你选中了文本框的组,Word也不能计算文本框的字数。也就是说,如果要统计组里面某个文本框的字数,你必须先拆分组,然后再选中文本框统计字数。
如果你经常要统计整个文档的字数,而且很在乎统计结果是否精确,Word统计功能对文本框的处理方式显然是一大麻烦。要彻底解决这个问题,最佳的办法是使用Word宏。下面的Word宏TextBoxCount实现了这个功能,它逐一访问文档包含的各个文本框,如果有多个文本框被定义成组,则自动拆分组。TextBoxCount宏计算每一个文本框的字数,最后用对话框显示出文档中所有文本框包含的字数和字符总数,以及整个文档的字数和字符总数(含文本框)。
简要说明一下在Word中定义宏的步骤:选择菜单“工具”→“宏”→“Visual Basic 编辑器”,输入TextBoxCount宏的内容。
完成后,关闭Visual Basic编辑器返回Word。如果想要通过工具栏按钮来启动TextBoxCount宏,设置步骤如下:选择菜单“工具”→“自定义”,选择自定义对话框的“命令”页,在左边的“类别”列表中选择“宏”,把右边“命令”列表中的TextBoxCount宏拖到工具栏上,工具栏上就会新增一个按钮,右击该按钮,设置按钮的名称、图形等选项,最后关闭“自定义”对话框。下图显示了运行TextBoxCount的结果。
最后需要注意的是,TextBoxCount宏可能修改文档,即把原来定义成组的文本框全部拆开。由于这个原因,在运行TextBoxCount宏之前最好保存一下文档,运行TextBoxCount宏之后立即撤消改动或从磁盘重新打开文档。