一最近做的產品規格書,每個檔案里面一堆的表格,每個表格寬度都有些許差異,逐個修改著實讓人抓狂,了解宏功能的小伙伴估計有了想法,怎么操作呢,來吧||~展示
新建一個docx檔案,打開開發工具,添加一個按鈕,命名一下,名字改不改無所謂,為了好看

我這里使用的是WPS 2019專業版
雙擊按鈕進入代碼編輯
Private Sub CommandButton1_Click()
Call WordBatchProcess
End Sub
Sub TablesBatchProcess()
'將所有表格統一為頁眉寬度
Dim i As Integer, j As Integer
Dim tempTable As Table
Application.ScreenUpdating = False
'洗掉所有可編輯的區域的用戶權限
ActiveDocument.DeleteAllEditableRanges wdEditorEveryone
'添加可編輯區域
For Each tempTable In ActiveDocument.Tables
tempTable.Range.Editors.Add wdEditorEveryone
i = i + 1
Next
'選中所有可編輯區域
ActiveDocument.SelectAllEditableRanges wdEditorEveryone
'洗掉所有可編輯的區域的用戶權限
ActiveDocument.DeleteAllEditableRanges wdEditorEveryone
Application.ScreenUpdating = True
For j = 1 To i
ActiveDocument.Tables(j).PreferredWidth = 485.287445
'這個寬度是我錄制宏得出來的,自己根據需求改就行
Next j
End Sub
Sub WordBatchProcess()
Dim FileName As String
Dim Doc As Document
Dim MyDir As String
MyDir = ThisDocument.Path & "\"
'檔案夾路徑根據需要自己修改,需要處理的檔案都放該檔案夾內
FileName = Dir(MyDir & "\*.docx", vbNormal)
'只修改docx,doc*這樣會把自身docm包含進去,程式無回應
Do Until FileName = ""
If FileName <> ThisDocument.Name Then
Set Doc = Documents.Open(MyDir & "\" & FileName)
Doc.Activate
Call TablesBatchProcess
Doc.Close True
FileName = Dir()
End If
Loop
Set Doc = Nothing
End Sub
編輯完成后,我們保存這個word檔案時,選擇否

選擇docm格式,這個格式可已保存我們已經寫好的代碼
完成后,記得把需要修改的word檔案放在同一個檔案夾,點擊一下按鈕感受一下解放雙手的快感吧,
另外附件我已經上傳
https://download.csdn.net/download/Pwwwqq/32481984
手懶有積分的小伙伴支持一下,代碼未加密
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/312101.html
標籤:其他
上一篇:python+selenium-12306實戰解決登錄滑塊問題
下一篇:一個神器,讓寫東西快得飛起
