Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
972to976
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
972to976
972to976
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Externe Verknüpfungen

Externe Verknüpfungen
26.04.2008 12:22:00
Johann
Hallo Excel-Könner!
Ich habe externe Verknüpfungen, die nicht beim Öffnen, sondern nur bei Bedarf mittels Makro aktualisiert werden sollen.
Dabei ist die Quelldatei geschlossen.
Ich habe "Bearbeiten-Verknüpfungen-Eingabeaufforderung beim Start" auf "Keine Warnung anzeigen und Verknüpfungen nicht aktualisieren" gestellt.
Mit
"ActiveWorkbook.UpdateLink Name:=ActiveWorkbook.LinkSources"
kann ich zwar aktualisieren, es erscheint aber immer das Explorerfenster zum Auswählen/Ändern der Quelldatei (die Datei ist vorhanden).
Wie kann ich per VBA die Daten aktualisiern und das Explorerfenster nur anzeigen lassen, wenn die Quelldatei nicht bekannt ist?
Herzlichsten Dank im Voraus
Johann

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Externe Verknüpfungen
26.04.2008 12:39:00
Bernd
Hallo Johann,
ich kenne das Problem auch, das tritt aber nur auf, wenn sich irgend etwas in der Linkadresse geändert hat, und sei es nur ein zusätzliches Leerzeichen.
Bist du >> absolut Grüße
Bernd

Nix verändert
26.04.2008 13:00:52
Johann
Hallo Bernd!
Ich habe das jetzt so an die 10 mal versucht: Quelldatei nicht verändert - Zieldatei neu geöffnet - Daten aktualisiert - gespeichert und geschlossen - neu geöffnet ..... Dabei ist es mir ein Mal geglückt.
Die manuelle Aktualisierung über "Bearbeiten - Verknüpfungen - " geht immer ohne Nachfrage.
Gibt es da vielleicht noch eine andere Möglichkeit ?
Schöne Grüße
Johann

Anzeige
AW: Verknüpfungen einzeln aktualisieren
26.04.2008 16:01:00
Erich
Hallo Johann,
vielleicht ist nur eine oder ein Teil deiner Quellmappen betroffen und du kannst mit diesem Code
die Schuldige(n) herausfinden:

Sub aTst()
Dim aLinks, ii As Integer
aLinks = ActiveWorkbook.LinkSources(xlExcelLinks)
If Not IsEmpty(aLinks) Then
For ii = 1 To UBound(aLinks)
MsgBox "Aktualisiere " & aLinks(ii)
ActiveWorkbook.UpdateLink Name:=aLinks(ii)
Next ii
End If
End Sub

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

AW: Verknüpfungen einzeln aktualisieren
26.04.2008 16:18:00
Johann
Jawohl Erich!
Du hast den Nagel auf den Kopf getroffen. Bei der manuellen Aktualisierung kann man sich ja die Quelldatei aussuchen, die aktualisiert werden soll.
Mit VBA werden immer alle Verknüpfungen aktualisiert. Wenn ich die Verknüpfungen auf die 2. Datenquelle wegnehme, funktioniert's.
Gibt es in VBA nicht auch die Möglichkeit, nur eine bestimmte Quelle zu aktualisieren?
Herzlichen Dank und schöne Grüße aus dem Weinviertel
Johann

Anzeige
AW: Verknüpfungen einzeln aktualisieren
26.04.2008 16:33:23
Johann
Hallo Erich!
Die Antwort auf deinen ersten Vorschlag s. oben.
Bleibt noch die Frage:
Gibt es in VBA nicht auch die Möglichkeit, nur eine bestimmte Quelle zu aktualisieren?
Herzlichen Dank und schöne Grüße aus dem Weinviertel
Johann

AW: Verknüpfungen einzeln aktualisieren
26.04.2008 18:02:51
Erich
Hi Johann,
hast du dir die Routine mal genau angesehen?
Mit "ActiveWorkbook.UpdateLink Name:=aLinks(ii)"
werden - innerhalb einer Schleife - die Daten aus jeder Quelldatei einzeln aktualisiert.
Mit
ActiveWorkbook.UpdateLink Name:=ActiveWorkbook.LinkSources(xlExcelLinks)(1)
werden nur die Daten aus der 1. Quelldatei aktualisiert, mit
ActiveWorkbook.UpdateLink Name:=ActiveWorkbook.LinkSources(xlExcelLinks)(2)
die Daten Daten aus der 2. Quelldatei usw.
Wenn dir das zu unübersichtlich ist, kannst du das auch so machen:

Sub aTst()
Dim aLinks, ii As Integer
aLinks = ActiveWorkbook.LinkSources(xlExcelLinks)
If Not IsEmpty(aLinks) Then
MsgBox "Aktualisiere " & aLinks(1)
ActiveWorkbook.UpdateLink Name:=aLinks(1)
End If
End Sub

oder das Ganze z. B. mit (2) statt (1)
Da ich die Namen deiner Quellmappen natürlich nicht kenne, habe ich sie mit LinkSources() ermittelt.
Du kannst auch ganz einfach per Makroaufzeichnung eine Prozedur erstellen,
die die Verknüpfungen zu einer bestimmten Quellmappe aktualisieren lässt.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: Nix verändert
26.04.2008 16:04:38
Erich
Hi Johann,
noch eine Möglichkeit: Probier mal
Bearbeiten - Verknüpfungen - Status prüfen
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

AW: Nix verändert
26.04.2008 17:02:38
Johann
Text:
Hallo Erich!
Die Antwort auf deinen ersten Vorschlag s. oben.
Bleibt noch die Frage:
Gibt es in VBA nicht auch die Möglichkeit, nur eine bestimmte Quelle zu aktualisieren?
Herzlichen Dank und schöne Grüße aus dem Weinviertel
Johann

4 Forumthreads zu ähnlichen Themen


Hallo zusammen,
mit diesem Makro aktualisiere ich auf Knopfdruck externe Verknüpfungen (es handelt sich nur um eine Datei, die verknüpft ist). Die verknüpfte Datei ist geschlossen.
Sub linkupdate()
Application.ScreenUpdating = False
Worksheets("SUM_BY_CUST").Unprotect 'Wird zum...
Anzeige

Hallo zusammen,
ich habe für die Arbeit mehrere Exceltabellen erstellt. Excel 2016
Diese fungieren als Dienstplan, mit dem meine Abteilung die Planung betreibt.
Zusätzlich habe ich Hilfsdateien erstellt, diese leiten zu den individuellen Plänen der einzelnen Mitarbeiter, sowie zu de...

Hallöchen,
nachdem ich heute nach langer Suche genau das gefunden habe, nachdem ich auf der Suche war, bin ich
noch nicht 100%ig glücklich.
Mit diesem Code (siehe unten) sollen die Tabellenblätter nach einer bestimmten Zelle im Blatt benannt werden.
Wenn ich aber nun den Zellen...
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige