如何将文本从Word文档转换为另一个Word文档

时间:2019-07-19 13:10:19

标签: vba ms-word

我有两个Word文档,每个文档都包含一个单词。 我有第三个文档,需要从两个文档中提取每个单词,并使用替换功能编辑文档中的所有超链接。 如果我在函数中输入字符串,则替换功能有效,但是当尝试从文档中拉出两个单词时,替换功能不起作用

Public Sub Document_Open()
    Dim x As Document

    Set newSource = Application.Documents.Open("\\t1dc\Everyone\Ben\ns.docx", ReadOnly:=True, Visible:=False)
    Set oldSource = Application.Documents.Open("\\t1dc\Everyone\Ben\os.docx", ReadOnly:=True, Visible:=False)

    Dim newServer As Range
    Set newServer = newSource.Content

    'Test using message box
    MsgBox newServer

    Dim oldServer As Range
    Set oldServer = oldSource.Content

    'Test using message box
    MsgBox oldServer

    For Each h In ActiveDocument.Hyperlinks
           h.Address = Replace(h.Address, oldServer.Text, newServer.Text)
           MsgBox h.Address
    Next

    newSource.Close
    oldSource.Close

    Set x = Nothing
End Sub

2 个答案:

答案 0 :(得分:0)

请检查oldServer和newServer的长度,因为您还需要插入行末的\r

答案 1 :(得分:0)

是的,谢谢!

从字符串末尾删除,并且有效

将oldS作为字符串 oldS = Left(oldServer.Text,Len(oldServer.Text)-1)