2011-04-13 94 views
0

我正在使用access 2003,我想從硬盤上打開一個word文檔並替換它中的一些文本並將其打印出來(類似於郵件合併的操作,其中我有一個文檔,我想添加一些來自當前記錄的文本來訪問文檔並打印它)。 我發現下面的代碼,但它不會更改word文檔中的文本。如何在訪問VBA中使用word對象查找/替換

With pDoc.Content.Find 
    .ClearFormatting 
    .Text = "hi" 
    .Replacement.ClearFormatting 
    .Replacement.Text = "hello" 
    .Execute Replace:=wdReplaceAll, Forward:=True, _ 
     Wrap:=wdFindContinue 
End With 

並且pDoc被設置爲打開的文檔。

任何想法爲什麼這不會改變文本? (它運行正常,但爲hello不會改變喜; Word文檔不改變)

+0

我不確定在自動化單詞或其他辦公應用程序時可以使用命名參數/參數。嘗試用它們的實際值替換它們(您可以在對象瀏覽器中找到它 - VBE中的F2) – 2011-04-13 22:33:20

回答

0

從我的回答引用了這個問題: Excel VBA: How to use ListTemplates in Excel to control Word?

在Excel中,您需要添加一個參考Word對象模型:

在萬客隆編輯器(ALT + F11)選擇「工具」菜單,然後單擊 「引用...」。點擊「Microsoft Word Object Library」旁邊的複選框。點擊「確定」。現在嘗試再次運行宏。

這應該會讓你快到那裏。

也許所有缺少的是對Word對象庫的引用。