發佈日期:
分類:
如何解決Microsoft Word VBA中‧Compile error: Can’t find project or library的錯誤
01. 同事今天又帶來了一個有趣的問題,Microsoft Word 2010中設有巨集,在其自己電腦中執行是沒有問題的,但當檔案在其他電腦中執行時(都是Microsoft Word 2010),便會出現Compile error: Can’t find project or library錯誤。
02. 而錯誤位置,是出現在下面這一行。
sCode = Left(ActiveDocument.FormFields("Dropdown").Result, 4)
03. 一句很簡單的執行句子,就是取出內容最左邊的4個字串。
04. 執行:
msgbox(ActiveDocument.FormFields("Dropdown").Result)
結果是能正常的顯示當中內容。
05. 考慮會不會是出來的是數字,因而最左邊的4個字串出現問題。執行:
msgbox(format(ActiveDocument.FormFields("Dropdown").Result))
結果是能正常的顯示內容。
06. 總結是,終之一加上Left()函數就會出現Compile error: Can’t find project or library錯誤。
07. 上網尋找解決方案,有的說是欠了載入Library,加了便可解決問題。但人家那個是Microsoft Excel,今天的是Microsoft Word。
08. 最後發現問題真的出在Left()函數內。
將: sCode = Left(ActiveDocument.FormFields("Dropdown").Result, 4) 更改為: sCode = VBA.Left(ActiveDocument.FormFields("ARCDropdown2").Result, 4)
09. 再執行時便不會再出現錯誤。似乎問題在於,VBA執行時不能確認LEFT函數是VBA的函數,需要加上VBA.Left,令其能辨認其為VBA內的函數。
發佈留言