Externe Verknüpfungen in Excel mit VBA aktualisieren
Schritt-für-Schritt-Anleitung
Um externe Verknüpfungen in Excel mit VBA zu aktualisieren, kannst du das folgende Makro verwenden. Dieses Beispiel aktualisiert die Verknüpfungen nur, wenn die verknüpfte Datei geschlossen ist.
-
Öffne Excel und drücke ALT + F11
, um den VBA-Editor zu öffnen.
-
Gehe zu Einfügen
> Modul
, um ein neues Modul zu erstellen.
-
Füge den folgenden Code in das Modul ein:
Sub linkupdate()
Application.ScreenUpdating = False
Worksheets("SUM_BY_CUST").Unprotect ' Wird zum Aktualisieren der Verknüpfungen benötigt
Dim arrLinks
With ActiveWorkbook
If Not IsEmpty(.LinkSources) Then
arrLinks = .LinkSources
ActiveWorkbook.UpdateLink Name:=arrLinks(1)
Else
MsgBox "Datei hat keine Verknüpfungen", vbInformation + vbOKOnly, _
"1. Verknüpfung der Datei aktualisieren"
End If
End With
Worksheets("SUM_BY_CUST").Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Application.ScreenUpdating = True
End Sub
-
Schließe den VBA-Editor und gehe zurück zu Excel.
-
Drücke ALT + F8
, wähle linkupdate
und klicke auf Ausführen
, um die Verknüpfungen zu aktualisieren.
Häufige Fehler und Lösungen
Ein häufiges Problem ist die Fehlermeldung, die auftritt, wenn die verknüpfte Datei geöffnet ist. In diesem Fall bekommst du die Meldung: "Die Methode 'UpdateLink' für das Objekt '_Workbook' ist fehlgeschlagen".
Lösung:
- Stelle sicher, dass die verknüpfte Datei geschlossen ist, bevor du das Makro ausführst. Wenn du die Datei vorher öffnest, werden die Verknüpfungen bereits aktualisiert und das Makro kann nicht auf die geschlossene Datei zugreifen.
Alternative Methoden
Wenn du die automatische Aktualisierung von Verknüpfungen aktivieren möchtest, kannst du dies auch über die Excel-Optionen tun:
- Gehe zu
Datei
> Optionen
.
- Wähle
Erweitert
.
- Scrolle nach unten zu
Allgemein
und aktiviere die Checkbox für „Verknüpfungen beim Öffnen der Datei automatisch aktualisieren“.
So stellt Excel sicher, dass alle externen Verknüpfungen beim Öffnen der Datei automatisch aktualisiert werden.
Praktische Beispiele
Hier ist ein Beispiel, wie du externe Verknüpfungen finden kannst, die in deinem Excel-Dokument vorhanden sind:
-
Verwende den folgenden VBA-Code, um alle Verknüpfungen in einer Meldung anzuzeigen:
Sub findLinks()
Dim arrLinks
arrLinks = ActiveWorkbook.LinkSources(xlExcelLinks)
If Not IsEmpty(arrLinks) Then
Dim i As Integer
For i = LBound(arrLinks) To UBound(arrLinks)
MsgBox arrLinks(i)
Next i
Else
MsgBox "Keine externen Verknüpfungen gefunden."
End If
End Sub
Führe dieses Makro aus, um zu sehen, welche externen Verknüpfungen in deiner Arbeitsmappe enthalten sind.
Tipps für Profis
- Verknüpfungen automatisch aktualisieren: Du kannst die Option zur automatischen Aktualisierung von Verknüpfungen in den Excel-Optionen aktivieren, um Zeit zu sparen.
- Vermeidung von Fehlern: Stelle sicher, dass alle verknüpften Dateien am richtigen Speicherort vorhanden sind, um Fehlermeldungen bei der Verknüpfung zu vermeiden.
- VBA Debugging: Nutze
Debug.Print
in deinem VBA-Code, um den Status von Variablen zu überprüfen und Fehler leichter zu identifizieren.
FAQ: Häufige Fragen
1. Wie kann ich sicherstellen, dass meine Verknüpfungen automatisch aktualisiert werden?
Du kannst die Option zur automatischen Aktualisierung in den Excel-Optionen aktivieren. Gehe zu Datei
> Optionen
> Erweitert
und aktiviere die entsprechende Checkbox.
2. Was kann ich tun, wenn ich eine Fehlermeldung beim Aktualisieren der Verknüpfung erhalte?
Stelle sicher, dass die verknüpfte Datei geschlossen ist, da eine offene Datei zu Problemen führen kann. Wenn das Problem weiterhin besteht, überprüfe, ob der Pfad zur verknüpften Datei korrekt ist.