APP下载

基于VBA 计算机辅助工具编辑功能的开发与应用

2023-08-26张晓耿斐孙浩森吴芹

山东建筑大学学报 2023年4期

张晓耿斐孙浩森吴芹

(山东建筑大学学报编辑部,山东 济南 250101)

0 引言

目前的工作和生活中,人们普遍采用Word 类的办公软件开展文字的编辑工作,但是对报纸、学术期刊、硕博毕业论文、行业标准文件等专业性的文章而言,其对文字的要求更加严格,而且国家也针对出版物的标点符号、量、单位和符号、参考文献格式、科学技术名词、表格插图等做了一系列的标准规范,«出版管理条例»里更是明确指出:出版物的规格、开本、版式、装帧、校对等必须符合国家标准和规范要求,以保证出版物的质量。 因此,在稿件正式刊发前,必须按照标准规范细致地加工、编辑并修改上述内容,实现语言文字的规范化。

常见的修订软件为国内市场上占有率最高的黑马校对软件,其可以检索出错别字、异形词、拼写错误、政治敏感词等各类错误,对社科类论文更具应用价值;而针对参考文献的善锋软件,可以联网中国知网等数据库进行检索,依次比对后能够将文献修改为国家标准格式。 但此类软件价格较高,升级维护也需要周期性的付费,有些新闻出版单位甚至未能配齐这些软件,对于个体的文字工作者而言成本就显得更高了。 但是,在Word 中使用共享的Visual Basic 宏语言(Visual Basic for Applications,VBA)开发计算机辅助工具则无任何经济成本,作者或学生更加容易接受。 目前,此技术多用于解决日常重复性的文字问题[1],亦在公文处理[2]、翻译小程序[3]、自动阅卷系统[4]等领域得到广泛应用。 同样地,有不少出版单位开发了免费的VBA 程序,将编辑从繁琐的重复性劳动中解脱出来。 毛星等[5]通过VBA实现了表格图片编号连贯性检测、量和单位的规范化、重复语句高亮显示等功能;王锦秀等[6]利用VBA 提升了表格的编校质量;崔玉洁等[7]实现了敏感词、重复词语的标注和格式的调整;郑小光等[8]通过VBA 调用数据库的方法,避免了量名称、符号、科技名词等的不规范使用;康锋等[9]通过构建数据库的方法实现了在Word 稿件中插入、替换、批注等文字处理。

文章采用更加简洁的开发方式,不需要建立常见的数据库,针对批量的文档模板更换、常见语义修订、科学技术名词和敏感词修改、空格、量单位更正、图表序号连贯性检查等需求开发VBA 宏程序,编程时将上述功能集中在一个宏程序“突出显示”中实现了“一键操作”。 针对参考文献中的英文人名大写与常见格式修订等开发了“编辑文献”宏程序。此计算机辅助工具有助于各类文字工作者提高了文字处理的效率,快速实现了文字的规范化。

1 Word 文档样式批量更改

VBA 是VB 编程语言(Visual Basic)的一种标准化宏语言,是微软公司开发的与办公软件Office完美结合的编程语言,具有最直接、最深层的处理优势,掌握VBA 有助于实现办公自动化,且其编程方式更易修改和使用,对没有编程基础的人较为友好[10-11]。 宏是执行一系列VBA 语句的指令集合[12],针对Word 程序,需要在菜单栏加载“开发工具”菜单,其方法是在[文件]菜单中选择[选项],打开后选择[自定义功能区],选中[开发工具]复选框。 宏的编制方法有2 种,即(1) 录制宏点击[录制宏]按钮后,如实现“替换”功能,只需要在文本中将替换操作一遍,即可在编辑器中自动生成宏代码;(2) 使用Visual Basic 编辑器由于有些宏是无法录制的,因此需要直接使用编辑器编写代码。 在实际编程时,多采用两者结合的方式,能够加快宏开发的速度。

现在办公文字已经采用了电子文稿的方式,但很多工作者对文档处理的还存在着重复使用格式刷的方法,尤其是批量处理文档样式时,这种方法费时费力且容易出错。 而采用VBA 编程则可以将需要统一样式的文件放于一个文件夹中,不需要打开文档即可实现所有文档样式的修改。 其方法是将要求的多级标题、作者、正文、参考文献等的样式设置成新模板[13],再进行模板样式套用,其步骤是打开需要编辑的文章,选择菜单[开发工具]中的[文档模板],进入对话框后选择新建模板,如图1 所示,并勾选“自动更新文档样式”,但此操作的前提是初始稿件采用样式编辑了文字和标题。

图1 自动更新样式图

在此基础上,采用宏命令可实现批量文档的样式更改,宏命令完整代码为

2 基于Word VBA 的计算机辅助工具开发

将操作过程中经常遇到的问题合并到1 个宏程序中(命名为“突出显示”)进行处理,不需要额外建立数据库或文档等操作,通过启动宏命令即可“一键操作”。 而且,此部分代码完全开源,直接复制到Visual basic 编辑器中即可使用,无需任何成本。

2.1 高亮标识

为了方便使用者在文稿中看到计算机辅助工具改动的位置,特设置将修改的内容全部高亮标识,其主要代码为

由上述代码可以看出,编程语言与英文意义相同,便于理解。 此部分代码需放置于宏程序首位,是一种全局性操作,对后述变更的内容可全部高亮显示。

2.2 敏感词和科学技术名词批量修订

行业标准、硕博论文、科技论文等专业性文章均有严格的标准要求,在文档编辑过程中,要注意敏感词查错修改、专业的科学技术名词避免错误或使用旧制、量单位的大小写需标准化、论文约定的格式等。 文稿凭人工检查费时又不能避免疏漏,编程时可将需要修订的全部常见词汇直接编入VBA 程序,实现一键替换。 此类词条在应用时设置了几百条,均放置于“突出显示”宏命令里。 在操作过程中不需要调用其他类型的文件,或比对数据库的词条。

如文稿中不允许使用旧制“公斤”,宏程序中就可以挑选出“公斤”关键词修改为“kg”并高亮标识此处做过修订,其关键代码为

此代码的实质为替换功能,通过此类模块的堆叠即可实现“批量替换”功能。 如工具还实现了年月日的格式统一、量单位大小写的修订和专业名词、常见错别字、常见语序的一键修改。 部分关键代码为

2.3 语义修订

某些作者在写作时存在一些的语言习惯问题,如经常使用“的”,为了使语言更有专业性,需要对此类语句进行加工处理,代码语句为

此部分为一个代码块,其含义为查找2 个“的”中间连接1~5 个字的词组,.Replacement.Text =""为空,则执行后仅对这些关键字高亮显示,提示用户重点修改此类语句。

或者文章中重复出现“对……进行……”“进行了……”等句式,那么代码即可设置关键词为“进行”去通篇查找文稿。 同样的,使用“首先”“然后”“最后”一般都需要替换为(1)(2)(3),可让文章条理更加清晰。 在宏中将需要修订的语义关键词采用此方式编程,可执行一键查找并标识。

2.4 重复字词的检查

文稿经常会出现打错字的情况,如“的的”“本文本文”类重复字词的情况,此类疏漏如果仅通过校对有一定的难度,仍需要借助替换功能实现批量查找。 通过高亮显示后,用户可以明显地提高审核速度。 其VBA 的关键代码主要为

2.5 空格标准修改

2.5.1 量与单位的空格

根据GB 3101—1993«有关量、单位和符号的一般原则»[14]规定,单位符号应当置于量的整个数值之后,并在其间留一空隙。 此问题在自然科学类文章中较为普遍,靠手动修订容易疏漏,通过宏命令可实现全文量与单位的空格操作。 其代码为

其中核心语句为.Text ="([0-9])([a-zAZ])",([0-9])表示为任意数字字段,([a-zA-Z])为任意字母的字段;.Replacement.Text =" \1 \2"表示两个字段按中间加一空格的格式排列。 此种方式认为数字后面加字母即是单位,并不严判字母是否为标准量的单位。

2.5.2 千分位的空格

根据GB 3101—1993[14]规定:为使多位数字便于阅读,将数字分成组,从小数点起,向左和向右每三位分成一组,组间留一空隙,但不得用逗号、圆点或其他方式。 需要注意的是,千分位空格有时会导致数据割裂分为两行显示,而这并不符合国家标准,因此不能采用space 空格,而必须选择不间断空格(^s)。 其主要代码为

在文稿中出现年份的情况也较多,但其不需要设置空格,因此上述程序中亦排除了年份的空格操作。

2.6 图标题顺序的检查

在Word 文稿中,使用图表可以更形象地展示结果,但排版时要求图表以及公式的序号必须按照顺序编排,不能中断[15]。 但图由于存在分组情况,如1 个图中分(a)(b)等子图,图的标题顺序与图的个数并不一致,因此对图的编号检查无法通过查询图的个数依次命名。 文章中为了简化操作,仅高亮标识出文章中“图*”(*表示任意内容)标注的内容,由作者或校对者依次核查正文中与图中标注的顺序是否一致。 其主要代码为

2.7 表编号连贯性检查

由于表在论文中是按照表的个数依次命名标题的,因此可以通过检查表的个数和命名的编号是否一致的思路设计宏程序[5]。 其实现步骤与完整代码为

(1) 此模块先将文中表格序号改为静态,然后将所有“表*”的关键字段设置为高亮显示

(2) 表的标题按照国家出版物标准,位置均在表格的上方一行,因此可以找到表的第一个单元格后再向上移动,即可找到上方的标题行。 如果标题中表的序号与表的编号一致,则取消高亮显示。

2.8 参考文献的格式修改

GB/T 7714—2015«信息与文献参考文献著录规则»[16]中规定:个人著者,其姓全部著录,字母全大写,名可缩写为首字母。 但实际写作过程中,作者从软件导入或百度学术引用的参考文献格式并不完全符合国家标准,尤其是引用外文文献时作者的名字只有姓的首字母大写,其他均为小写的情况。 为此,针对作者信息部分,设想首先查找到作者名字部分高亮标识,将选中区域内容全部更改为大写字母,再将et al 改为小写。 关键代码为

选择名字部分内容,以序号]为开始,以第一个.为结束

另外,针对参考文献中“年,卷(期)”的格式,直接采用软件导入期刊格式时,“期”容易出现类似(06)的情况,而规范中采用(6)这种格式。 宏程序可以一键将其修改,其关键代码为

3 VBA 计算机辅助工具运行与结果

3.1 快捷键运行宏程序

上述所开发的代码完全是免费开源的,需求者只需要将宏代码导入到模块中即可运行。 为了简洁,文章创建了针对正文内容的“突出显示”宏和“编辑文献”宏。 其中“突出显示”宏实现了上述的8 类功能,包含词条近千个;“编辑文献”宏相对较为简单,仅修改文献作者名、符号、格式等:基本满足了常见语言文字处理的需求。 用户在使用此辅助工具时,需通过开发工具菜单进入Visual Basic 编辑器,在模块位置点击右键选择导入文件,即可将宏程序安装到Word,如图2 所示。

图2 导入宏程序图

为调用程序方便,还为宏命令设置了快捷键,由于不是通过“录制宏”可以直接选择“键盘”,因此需要选择菜单[文件]—[选项]—[自定义功能区]—[键盘快捷方式:自定义],打开选项卡,如图3 所示。 选择宏类别,再选择要设置快捷键的宏,在“请按新快捷键”位置按下要设置的快捷键,指定后即可设置成功。 通过此方式,仅需打开Word 文章,启动快捷键(如Ctrl+Shift+Z)即可实现一键编校。

图3 快捷键设置图

3.2 运行结果

计算机辅助工具集合了文字工作者经常遇到的格式、单位和语言标准化、自动编号等问题,将其集中到一个宏程序里,提供了批量处理各类问题的一键式解决方案。

批量处理样式在运行时,会看到文档快速地打开与关闭,最终会提示“已套用模板”,若文件在传输给他人时,由于其没有样式模板会导致样式缺失,因此需要将文档模板里的“自动更新文档样式”复选框取消,才可在他人电脑上正常显示。

正文、参考文献的部分编校结果如图4 所示,可以看出,当文中出现所设置的常见问题时,宏程序会更正或提示错误并高亮显示,提示用户有重点地编修,减少了重复索味的工作,将更有助于其关注于文章的内容审核与提升。

图4 辅助工具运行结果展示图

4 结语

针对报纸、期刊、学位论文等稿件中常见的语言与格式问题,文章基于Word VBA 开发了计算机辅助工具,能够使文稿根据常见的国家出版物标准进行批量规范化处理。 此计算机辅助工具开发代码完全开源,无需任何成本,任何需求者均可在此代码基础上根据个性化需求进行实时扩展,方便快捷。 实际应用也表明,VBA 辅助工具会使复杂且繁复的工作实现了计算机自动化处理,有效地提高了文字工作者的工作效率与初稿的文字质量。 但此工具的局限性在于词条数据达不到付费软件的数目,仅是设置一些常见的需求,同时针对语义的修订较少。 因此,从词组到短句再到长句、分句、段落,能够在语法意义上解决各类常见问题,开发更加智能的辅助工具是今后研究的重要方向。