im Netz habe ich ein Makro gefunden, dass alle Verknüpfungen eine ganzen Mappe geändert werden können, wenn die Mappe, auf der sich die Verknüpfungen beziehen, verschoben wird. Das funktioniert gut.
Kann man das Makro so ändern und wie, dass alle Verknüpfungen vor der Änderung mit Angabe des Tabellenblattnamens, der Verknüpfung vor der Änderung und dann der neuen Verknüpfung, in einem neuen Tab.batt aufgelistet werden?
z.B.
Tabname: Xy1, alte Verknüpfung: 'c:\xx\abs.xlsm, neue Verknüpfung: 'c:\ab\abs.xlsm
Wäre toll, wenn das machbar wäre und bitte um Hilfe.
Gruß,
Dieter(Drummer)
Sub Change_Link()
Dim myLinks As Variant
Dim NewSource As String
Dim OldSource As String
Dim i As Integer
If MsgBox("Alle Verknüpfungen in der Mappe ändern?", vbYesNo + vbQuestion, "xyx: Info") = vbNo _
Then
MsgBox "Es sind keine Änderungen erfolgt."
Exit Sub
End If
myLinks = ThisWorkbook.LinkSources
For i = 1 To UBound(myLinks)
OldSource = CStr(myLinks(i))
NewSource = Application.GetOpenFilename()
ThisWorkbook.ChangeLink Name:=OldSource, Newname:=NewSource
Next
' ThisWorkbook.UpdateLink
End Sub