簡體   English   中英

如何將我的 Word 文檔的 UpdateAllFields 添加到 Excel 中的 VBA 宏中?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM