我在Word文件中有以下Excel連結:
問題是,當進行變更時,引用的 Excel 工作表和 Word 文件上的文件版本都會變更。
因此,我需要更新連結路徑。
我想用 VBA 巨集來完成此操作,到目前為止,這是我所擁有的:
Sub Replace_Link()
Dim iShp As InlineShape
Dim exWb As Excel.Workbook
For Each iShp In ActiveDocument.InlineShapes
With ActiveDocument
Set exWb = objExcel.Workbooks.Open(.Path & "\" & Replace$(.Name, ".docm", ".xlsm"))
End With
With iShp
If Not .OLEFormat Is Nothing Then
If Split(.OLEFormat.ClassType)(0) = "Excel" Then
.LinkFormat.SourcePath = exWb
End If
End If
End With
Next
End Sub
我收到“Dim exWb As Excel.Workbook”的“使用者定義類型未定義”。我也非常確定我需要更多程式碼來包含無法使用“inlineShape”命令更新的“Worksheet”類型連結。
這是任何人都可以幫忙的事嗎? TIA
答案1
您是否在 VBA 專案中新增了對「Microsoft Excel 14.0 物件庫」的參考? (注意:14.0 可能會有所不同,具體取決於您安裝的 Excel 版本)
在 VBA 視窗中,從「工具」功能表中選擇「引用」以開啟「引用 - 項目」對話方塊。然後向下捲動清單並尋找 Microsoft Excel 庫並勾選該方塊(然後它應該出現在參考清單的頂部)。