[英]How do I add an UpdateAllFields for my Word doc, to my VBA Macros in Excel?
我有一個 Excel 宏,它從我的工作簿中提取數據,打開一個新的 Word 模板,並更新我們擁有的一些書簽。
然后我們 Select All,然后單擊 Update All 以使用交叉引用的信息填充文檔的 rest。
我不想手動執行“更新所有字段”,而是將其添加到我的 Excel 宏中,以便在更新書簽后自動發生。
這是當前代碼的一個小版本:
Private Sub CreateTemplate1(tPath As String, r As Integer)
Dim wdApp As Object
Dim wdDoc As Object
On Error Resume Next
Set wdApp = GetObject(, "Word.Application")
If wdApp Is Nothing Then Set wdApp = CreateObject("Word.Application")
On Error GoTo 0
wdApp.Visible = True
'wdApp.DisplayAlerts = False
Set wdDoc = wdApp.Documents.Open(FileName:=tPath)
With wdDoc
Dim obj_BMRange As Object
Set obj_BMRange = wdDoc.Bookmarks("STPNumber").Range
WriteToBookmarkRetainBookmark obj_BMRange, Range("L1").Value
Set obj_BMRange = wdDoc.Bookmarks("SiteAddress").Range
WriteToBookmarkRetainBookmark obj_BMRange, Range("C" & r).Value
End With
End Sub
Function WriteToBookmarkRetainBookmark(rng As Object, content As String)
Dim sBkmName As String
sBkmName = rng.Bookmarks(1).Name
rng.Text = content
rng.Document.Bookmarks.Add sBkmName, rng
End Function
請讓我知道在哪里添加更新所有字段代碼。
這將更新 wdDoc 中的所有字段
Dim field As field
For Each field In wdDoc.Fields
field.Update
Next
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.