2009-06-08 34 views
1

我有一些Word文檔中包含佔位符URL。該網址與「http://<URL>/service.svc」類似。 Word已經發現這些必須是有效的URL,並且當字段得到更新時,將其替換爲「錯誤!超鏈接引用無效」。從MS Word字段中恢復URL顯示「錯誤!超鏈接引用無效」

當我將鼠標懸停在該錯誤文本上時,單詞彈出窗口的工具提示仍顯示原始文本。有什麼方法來提取原始文本?該文件長度超過80頁。當然,必須有一個程序化的方式來做到這一點?

我試過下面的代碼,但它似乎沒有找到問題的超鏈接。

 For Each oHyperlink In ActiveDocument.Hyperlinks 
     If IsObjectValid(oHyperlink) Then 
      If Len(oHyperlink.Address) > 0 Then 
       If Mid(oHyperlink.Address, 8, 5) = "<ULR>" Then 
        oHyperlink.TextToDisplay = oHyperlink.Address 
        oHyperlink.Range.Font.Color = wdColorBlue 
        oHyperlink.Range.Font.Underline = wdUnderlineSingle 
        oHyperlink.Range.Font.UnderlineColor = wdColorBlue 
       End If 
      End If 
     End If 
    Next oHyperlink 

如果上面的代碼示例中刪除,如果該項目IsObjectValid它與超鏈接,指出「已刪除對象」的負載回來其中測試線。我假設這可能是「超鏈接」(通過單詞)破碎。我如何恢復文本?

注意:本文檔已保存並關閉,因此Ctr + z不是一種選項。

信息在那裏,我如何得到它?

回答

1

您是否嘗試用記事本打開文件並搜索http?這對我有用。

您還可以使用像「字符串」這樣的程序從Word文件中獲取所有文本字符串。見http://technet.microsoft.com/en-us/sysinternals/bb897439.aspx

+0

這就是我最後做(記事本)。我只是希望有一些方法可以通過編程方式將這個單詞創建回來的東西恢復到原來的樣子。我總是對過多的人爲干預保持警惕,因爲我們人類已知有手指問題等。 – Gineer 2009-06-08 15:27:40

0

如何:

For Each oHyperlink In ActiveDocument.Hyperlinks 
    set rng = oHyperlink.Range 
    rng.Collapse wdCollapseStart 
    rng.text = oHyperlink.TextToDisplay 
    oHyperlink.Range.Delete 
Next oHyperlink