日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

小秘书的福音——使用Word VBA打造自动排版工具

發布時間:2023/12/14 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 小秘书的福音——使用Word VBA打造自动排版工具 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

????????本人辦公室的秘書一枚。公文處理是我的日常,公文排版是我最基礎的工作之一。文字排版其實是件無聊的工作,字體,字號、行距被規定得死死的,我們的工作就是識別,然后去設置。然而,這種機械式重復工作,做不得幾下就膩了,我決定借助工具的輔助,幫我快速的完成工作。

????????經過一番折騰,終于做出了這一版,效果是這樣的:

?

排版助手的流程講解:

????????一、遍歷選區內的每一個段落、或者直接遍歷全部文檔:

For Each para In Selection.Paragraphs ... NextFor Each para In ActiveDocument.Paragraphs ... next

????????二、使用正則表達式,尋找文章中各個元素的特征(大標題、一級標題、二級標題),記錄他的長度,得出它的位置,然后設置它的字體。如:

Dim RegEx一級標題, Matches一級標題 As Object Set RegEx一級標題 = CreateObject("vbscript.regexp") RegEx一級標題.Pattern = "^[一二三四五六七八九十]{1,3}、[^。,,]+[,,、]?[^。,,]+\s*(。|$)"For Each para In Selection.ParagraphsIf Matches一級標題.Count > 0 Thenstrlen = Len(Matches一級標題.Item(0).Value)ActiveDocument.Range(Start:=para.Range.Start, End:=para.Range.Start + strlen).Font.Name = "黑體"end if next

????????三、以上代碼就是這個排版助手的知識核心。其中,最重要的部分,就是正則表達式的編寫。它定義了你認為的“一級標題”應該是什么樣子。比如我的這個匹配的模式:

"^[一二三四五六七八九十]{1,3}、[^。,,]+[,,、]?[^。,,]+\s*(。|$)"

????????能夠匹配以“一、”開頭,中間有一個或者沒有逗號,結尾為句號或者設么都沒有的情況:

一、會議說明(匹配)

二、參會人員。XXX,OOO、YYY(匹配)

三、會議強調,要嚴格執行黨內法規,堅持把紀律規矩擺在前面。(不匹配,因為有2個逗號)

????????四、結束語

? ? ? ? 第一次在CSDN上分享我自己的小知識。自己原來是學計算機的,但是工作后,在辦公室做了秘書,技術荒廢了好久。但是,轉念一想,自己既然是學計算機的,為什么不用自己的電腦技術,為實際的工作提供助力呢?

????????Word軟件無疑是世界上使用最廣泛的軟件之一,它功能強大,但是并不是每一個人都能掌握。據我觀察,普通文員掌握程度最多20%,甚至大多數文員,連手動排版都覺得困難。這是一個超級工具遍布各個角落的時代,人與人之間的差距,很大程度上,就是掌握復雜工具的能力之間的差距。

????????今天這個工具,看起來只有小小幾段代碼,但是對一個需要每天都對公文進行排版的文員,絕對是炸彈級別的助手。如果你正好是公務員、政府兩辦的朋友,絕對要透徹的研究一下。

總結

以上是生活随笔為你收集整理的小秘书的福音——使用Word VBA打造自动排版工具的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。