Aktualisieren von Linkpfaden mit Word VBA

Aktualisieren von Linkpfaden mit Word VBA

Ich habe die folgenden Links zu Excel in einem Word-Dokument:

http://i12.photobucket.com/albums/a212/hypersonik/links_zpsy9hghggl.png

Das Problem besteht darin, dass sich bei Änderungen die Dokumentversion sowohl im referenzierten Excel-Tabellenblatt als auch im Word-Dokument ändert.

Daher muss ich den Linkpfad aktualisieren.

Ich möchte dies mit einem VBA-Makro tun und hier ist, was ich bisher habe:

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

Ich erhalte die Meldung „Benutzerdefinierter Typ nicht definiert“ für „Dim exWb As Excel.Workbook“. Ich bin mir auch ziemlich sicher, dass ich mehr Code benötige, um die Links vom Typ „Arbeitsblatt“ einzuschließen, die nicht mit dem Befehl „inlineShape“ aktualisiert werden können.

Kann mir jemand dabei helfen? TIA

Antwort1

Haben Sie in Ihrem VBA-Projekt einen Verweis auf die „Microsoft Excel 14.0-Objektbibliothek“ hinzugefügt? (NB: Die 14.0 kann je nach installierter Excel-Version unterschiedlich sein.)

Wählen Sie in Ihrem VBA-Fenster im Menü Extras den Eintrag Verweise aus, um das Dialogfeld Verweise - Projekt aufzurufen. Scrollen Sie dann in der Liste nach unten, suchen Sie nach der Microsoft Excel-Bibliothek und aktivieren Sie das Kontrollkästchen (es sollte dann oben in Ihrer Referenzliste angezeigt werden).

verwandte Informationen