Bei der letzten Aufgabe in diesem Artikel werden alle verknüpften Arbeitsmappen einer Mappe dokumentiert. Die verknüpften Arbeitsmappen können Sie ebenso einsehen, wenn Sie aus dem Menü Bearbeiten den Befehl Verknüpfungen wählen. Leider ist in diesem Dialog nicht der komplette Pfad zu sehen. Beim folgenden Makro wird eine neue Tabelle eingefügt und es werden die Namen sowie Pfade der verknüpften Arbeitsmappen ausgegeben.

Sub VerknüpfteDateienAusgeben()
Dim Mappe As Workbook
Dim VLink As Variant
Dim i As Integer
Worksheets.Add
Set Mappe = ActiveWorkbook
VLink = Mappe.LinkSources(xlExcelLinks)
If Not IsEmpty(VLink) Then
  For i = 1 To UBound(VLink)
    Cells(i, 1).Value = "Verknüpfung " & i
    Cells(i, 2).Value = VLink(i)
  Next i
  ActiveSheet.Columns("A:B").AutoFit
End If
End Sub

Über die Methode Add fügen Sie eine neue Tabelle ein. Danach werden die Namen aller verknüpften Arbeitsmappen (Mappe.LinkSources(xlExcelLinks)) automatisch in einem Datenfeld (VLink) eingelesen. Dieses Datenfeld wird im Anschluss ausgelesen. Da Sie vorher nicht wissen, wie viele Verknüpfungen zu anderen Arbeitsmappen bestehen, liefert die Funktion UBound genau diese Information. Dabei greift diese Funktion auf den letzten Eintrag im Datenfeld (VLink) zu, indem die letzte verknüpfte Arbeitsmappe verzeichnet ist. Schreiben Sie nun die einzelnen Informationen aus dem Datenfeld direkt in die neue Tabelle. Passen Sie am Ende die Spaltenbreiten an, indem Sie die Methode AutoFit einsetzen.

Abb. 4: Alle verknüpften Arbeitsmappen werden in einer neuen Tabelle dokumentiert.

Das ist nur ein Ausschnitt aus dem Produkt Controlling Office. Sie wollen mehr?

Anmelden und Beitrag in meinem Produkt lesen


Meistgelesene beiträge