王志軍
例如“山藥”替換為“土豆”、“金瓜”替換為“南瓜”,諸如此類,由于需要替換的詞條比較多,手工替換顯然比較麻煩,其實(shí)我們可以利用VBA代碼實(shí)現(xiàn)上述的引用級(jí)替換需求:
首先在Excel制作對(duì)照表,創(chuàng)建“原詞”和“新詞”兩列,分別輸入相關(guān)的詞條,保證所有已打開(kāi)的Excel文件已經(jīng)處于關(guān)閉狀態(tài)。接下來(lái)打開(kāi)需要實(shí)現(xiàn)替換的Word文檔,按下“Alt+F11”組合鍵,打開(kāi)Microsoft Visual Basic for Applications編輯器窗口,依次選擇“插入/模塊”,在右側(cè)窗格插入一個(gè)空白模塊(如圖1),在這里手工輸入或粘貼代碼(關(guān)注電腦迷微信回復(fù)“201505vba1”獲取下載鏈接)。
上述代碼中的“ ActiveDocument.Content.Find.Execute findtext:=.Range("a" & i), replacewith:=.Range("b" & i), Replace:=wdReplaceAll, Forward:=True”行表示將Excel工作表的A列內(nèi)容替換為B列內(nèi)容,因此如果“原詞”和“新詞”的位置不在A、B列,請(qǐng)根據(jù)實(shí)際情況進(jìn)行修改。代碼檢查無(wú)誤之后,選擇“文件/關(guān)閉并返回到Microsoft Excel”,返回Excel主界面,按下“Alt+F8”組合鍵,打開(kāi)“宏”對(duì)話框,選擇并運(yùn)行宏,很快就可以實(shí)現(xiàn)批量替換的需求。
如果運(yùn)行代碼后提示“用戶定義類型未定義”的編譯錯(cuò)誤,請(qǐng)仍然進(jìn)入Microsoft Visual Basic for Applications編輯器窗口,從“工具”菜單下打開(kāi)“引用”對(duì)話框(如圖2),在“可使用的引用”列表下勾選“Microsoft Excel 15.0 Object Library”復(fù)選框,這是由于筆者使用的Excel是2013版本,其他版本請(qǐng)根據(jù)實(shí)際情況進(jìn)行選擇,確認(rèn)之后關(guān)閉對(duì)話框。重新返回Excel主界面,此時(shí)運(yùn)行VBA代碼就不會(huì)有錯(cuò)誤信息出現(xiàn)了。