雷群泌
(湖南環(huán)境生物職業(yè)技術(shù)學(xué)院,湖南 衡陽(yáng) 421005)
Word文字處理軟件是目前世界上使用最為廣泛的辦公軟件之一。使用Word文檔最基本的操作便是對(duì)一些重要文件進(jìn)行編輯和排版,例如公文、論文、標(biāo)書(shū)以及項(xiàng)目申報(bào)書(shū)等,這類(lèi)文件對(duì)排版有很多非常嚴(yán)格的規(guī)范和要求。以公文為例,2012年4月中共中央辦公廳、國(guó)務(wù)院辦公廳聯(lián)合印發(fā)了《黨政機(jī)關(guān)公文處理工作條例》,隨后國(guó)家質(zhì)量監(jiān)督檢驗(yàn)檢疫總局和國(guó)家標(biāo)準(zhǔn)化管理委員會(huì)又聯(lián)合發(fā)布了《黨政機(jī)關(guān)公文格式》國(guó)家標(biāo)準(zhǔn),從制度和標(biāo)準(zhǔn)的角度對(duì)我國(guó)黨政機(jī)關(guān)、企事業(yè)單位使用公文的規(guī)范提出了要求,該標(biāo)準(zhǔn)成為目前我國(guó)廣大文秘工作者處理公文的根本遵循。對(duì)文秘工作者來(lái)說(shuō),按照公文格式要求對(duì)文檔進(jìn)行排版并不難,麻煩的是要用手工排版的方式對(duì)大量機(jī)械重復(fù)的公文格式進(jìn)行編輯,采用手工排版不僅費(fèi)時(shí)費(fèi)力、效率低下,而且還容易出錯(cuò),不能保證排版的質(zhì)量,從而會(huì)影響公文處理的效果。
與手工排版方法相對(duì)應(yīng)的是自動(dòng)排版方法。顯然,可以開(kāi)發(fā)專(zhuān)門(mén)的排版軟件來(lái)實(shí)現(xiàn)對(duì)文檔的自動(dòng)排版,但是對(duì)于廣大普通用戶來(lái)說(shuō),這既不經(jīng)濟(jì),也不現(xiàn)實(shí)。因此,有必要開(kāi)發(fā)經(jīng)濟(jì)適用且適合普通用戶使用的自動(dòng)排版方法;其中比較有效的1種方法是使用Word VBA或宏技術(shù),已經(jīng)有一些學(xué)者對(duì)該方法進(jìn)行了初步研究。
文獻(xiàn)[1]研究了通過(guò)VBA平臺(tái)來(lái)限制和規(guī)范文檔編輯的過(guò)程,避免在文檔編輯的過(guò)程中因人為因素而導(dǎo)致出現(xiàn)不規(guī)范和錯(cuò)誤的操作,有效地降低了手工編輯的出錯(cuò)幾率和查錯(cuò)糾錯(cuò)的工作量,極大地提高了文檔編輯的效率。文獻(xiàn)[2]針對(duì)期刊編輯日常工作中需要完成大量重復(fù)的工作,使用Word VBA開(kāi)發(fā)了一些編輯加工功能,可以快速形成格式規(guī)范稿件,提高了期刊的編輯質(zhì)量。文獻(xiàn)[3]則利用VBA編程解決了Word 2010中對(duì)藏文進(jìn)行排版時(shí)存在無(wú)法對(duì)齊左右邊界的問(wèn)題,實(shí)現(xiàn)了藏文文檔排版的規(guī)范化。文獻(xiàn)[4]針對(duì)高校畢業(yè)論文復(fù)雜的排版要求,利用Word宏代碼和Delphi語(yǔ)言開(kāi)發(fā)了論文自動(dòng)排版系統(tǒng),實(shí)現(xiàn)了對(duì)畢業(yè)論文的自動(dòng)排版。由于公文是1種應(yīng)用非常廣泛的重要文書(shū),要起草和編輯公文就離不開(kāi)排版,特別是對(duì)于廣大文秘工作者來(lái)說(shuō),按要求對(duì)公文進(jìn)行排版和格式審核已經(jīng)成為1項(xiàng)頗費(fèi)精力的重要工作。但是,目前對(duì)按照最新公文格式規(guī)范要求進(jìn)行自動(dòng)排版的技術(shù)的研究還非常有限。
按照《黨政機(jī)關(guān)公文處理工作條例》和《黨政機(jī)關(guān)公文格式》國(guó)家標(biāo)準(zhǔn)的要求,并結(jié)合筆者單位的實(shí)際情況,公文格式總體上包括以下4個(gè)方面。
上邊距為3.0 cm,下邊距為3.0 cm,左邊距為2.5 cm,右邊距為2.4 cm;使用A4紙,寬度為21.0 cm,高度為29.7 cm;頁(yè)眉頁(yè)腳奇偶頁(yè)不同、首頁(yè)不同,頁(yè)眉距邊界1.5 cm,頁(yè)腳距邊界2.2 cm;指定行與字符網(wǎng)格,每行28個(gè)字符數(shù),每頁(yè)22行。
公文標(biāo)題為二號(hào)方正小標(biāo)宋簡(jiǎn)體;正文內(nèi)容為三號(hào)仿宋_GB2312;正文一級(jí)標(biāo)題為三號(hào)黑體;二級(jí)標(biāo)題為三號(hào)楷體_GB2312;三級(jí)標(biāo)題為三號(hào)仿宋_GB2312;西文字體為T(mén)imes New Roman。
公文的標(biāo)題設(shè)置為居中對(duì)齊,無(wú)首行縮進(jìn),段前、段后間距為0行,行距為固定值32磅;公文正文部分設(shè)置為兩端對(duì)齊,首行縮進(jìn)2字符,段前、段后間距為0行,行距為固定值30磅;所有段落取消孤行控制。
頁(yè)碼使用阿拉伯?dāng)?shù)字左右各加1條一字線,字體為四號(hào)宋體;其中,奇數(shù)頁(yè)的頁(yè)碼在頁(yè)面底端的右側(cè),偶數(shù)頁(yè)的頁(yè)碼在頁(yè)面底端左側(cè),首頁(yè)不顯示頁(yè)碼。
VBA是Visual Basic for Applications的簡(jiǎn)稱(chēng),也就是通常所講的新一代標(biāo)準(zhǔn)宏語(yǔ)言,它是1種基于Visual Basic的程序設(shè)計(jì)語(yǔ)言,通過(guò)嵌入到Office辦公軟件中,實(shí)現(xiàn)對(duì)Office辦公軟件的控制、功能擴(kuò)展和定制。VBA以面向?qū)ο蟮姆绞教峁┝宋臋n對(duì)象Document、頁(yè)面設(shè)置對(duì)象Pagesetup、段落對(duì)象Paragraph以及字體對(duì)象Font等很多對(duì)象,文檔編輯工作者只需要按照具體的排版要求定義好這些對(duì)象的屬性和方法,就可以完成對(duì)文檔的排版,即通過(guò)VBA編程,將排版要求代碼化,并嵌入到Word模板中,那么當(dāng)要對(duì)文檔進(jìn)行排版時(shí),只需要執(zhí)行該VBA程序,就可以完成對(duì)Word文檔的自動(dòng)排版。
3.2.1 進(jìn)入VBA編程環(huán)境
VBA的使用門(mén)檻不高,之所以沒(méi)有任何編程基礎(chǔ)的人也可以快速掌握VBA,是因?yàn)閃ord內(nèi)置了1個(gè)Visual Basic程序編輯器,可以通過(guò)創(chuàng)建宏的方式打開(kāi)該編輯器,該編輯器便是VBA程序的開(kāi)發(fā)工具,使用它不僅可以編寫(xiě)VBA程序,還可以對(duì)VBA程序進(jìn)行調(diào)試。
單擊Word 2010“視圖”選項(xiàng)卡下面的“宏”命令按鈕,彈出“宏”對(duì)話框,如圖1所示,在“宏名”下面的編輯框中輸入宏名稱(chēng)“公文排版”,選擇“宏的位置”中的“所有活動(dòng)模板和文檔”,再單擊“創(chuàng)建”按鈕就可以創(chuàng)建1個(gè)宏,同時(shí)打開(kāi)Visual Basic編輯器,在該編輯器中可以看到已經(jīng)創(chuàng)建了1個(gè)VBA過(guò)程“Sub 公文排版()”,如圖2所示。
圖1 宏對(duì)話框
3.2.2 公文格式的代碼化
由于Word VBA是以宏的形式來(lái)實(shí)現(xiàn)的,因此可以通過(guò)錄制宏的方式來(lái)實(shí)現(xiàn)從公文編輯到VBA代碼的轉(zhuǎn)化,再到Visual Basic編輯器中對(duì)代碼進(jìn)行適當(dāng)修改,就可以快速地完成對(duì)VBA自動(dòng)排版程序的編寫(xiě)。以頁(yè)面設(shè)置為例,按照公文格式要求,在對(duì)頁(yè)面設(shè)置的同時(shí)同步錄制宏,就可以創(chuàng)建1個(gè)“公文排版_頁(yè)面設(shè)置()”的VBA過(guò)程,具體代碼如下。
在上述代碼中,PageSetup是VBA提供的頁(yè)面設(shè)置對(duì)象,該對(duì)象具有很多屬性,例如TopMargin、BottomMargin分別表示頁(yè)面設(shè)置操作中的上邊距和下邊距,通過(guò)定義這些屬性就可以完成對(duì)頁(yè)面中頁(yè)邊距、紙張、版式以及文檔網(wǎng)格等的設(shè)置。按照同樣的方法,可以對(duì)公文格式對(duì)字體、段落等其他方面的要求一一轉(zhuǎn)換成VBA代碼,從而實(shí)現(xiàn)公文格式排版要求的代碼化。其中,插入頁(yè)碼的操作相對(duì)比較復(fù)雜,需要考慮奇、偶數(shù)頁(yè)頁(yè)碼的差異,具體程序流程如圖3所示。
要通過(guò)運(yùn)行1次VBA程序完成所有排版格式的自動(dòng)設(shè)置,還需要把前面實(shí)現(xiàn)的頁(yè)面設(shè)置、字體設(shè)置以及段落設(shè)置等VBA過(guò)程全部設(shè)置為“Sub 公文排版()”這個(gè)過(guò)程的子過(guò)程,這樣排版時(shí)只需要執(zhí)行“Sub 公文排版()”,所有的子過(guò)程就會(huì)依次自動(dòng)執(zhí)行。將其他過(guò)程設(shè)置為“Sub 公文排版()”的子過(guò)程的方法如下。
圖2 Visual Basic編輯器
圖3 插入頁(yè)碼的VBA程序流程圖
用Word 2010打開(kāi)1個(gè)格式非常混亂的文檔或者使用“清除格式”功能清除文檔的所有格式;再單擊視圖選項(xiàng)卡下的“宏/查看宏”,選擇“公文排版”,單擊“運(yùn)行”按鈕,就可以快速地完成文檔的自動(dòng)排版。通過(guò)對(duì)比,發(fā)現(xiàn)該方法已經(jīng)自動(dòng)按照公文格式要求完成了對(duì)文檔頁(yè)面、字體、段落以及頁(yè)碼的設(shè)置,特別是對(duì)文章標(biāo)題、正文中標(biāo)題(一級(jí)標(biāo)題、二級(jí)標(biāo)題和三級(jí)標(biāo)題)以及正文其他內(nèi)容的字體、字號(hào)、首行縮進(jìn)、對(duì)齊方式、段間距和行間距等參數(shù)的設(shè)置也都滿足公文格式的要求,該方法不僅排版效率高,而且排版效果也非常好。實(shí)驗(yàn)表明,該文提出的自動(dòng)排版方法是可行、有效的。
該文提出的Word VBA自動(dòng)排版方法有效地實(shí)現(xiàn)了公文自動(dòng)排版,極大地提升了文檔編輯的效率,對(duì)其進(jìn)行推廣應(yīng)用有利于減少文秘工作者對(duì)于公文進(jìn)行格式編輯的工作量,可以把工作重心和主要精力集中到對(duì)公文內(nèi)容的審核,從而提高公文處理工作和公文的質(zhì)量。