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

Klassiker:Verknüpfungen zu anderen Dateien löschen

Klassiker:Verknüpfungen zu anderen Dateien löschen
08.09.2004 10:23:22
imtis
Hallo zusammen,
ich habe jetzt einige Zeit in der Recherche verbracht und festgestellt, dass es zu meinem Anliegen zwar sehr viele Einträge, allerdings keine wirkliche Lösung gibt.
Es geht um das Löschen von Verknüpfungen zu anderen Dateien.
Zuerst frage ich mich, warum Excel die Möglichkeit bietet, Verknüpfungen zu anderen Dateien zu erstellen (Einfügen - Objekt - Von Datei erstellen - Verknüpfen), es jedoch in Excel anscheinend nicht möglich ist, diese wieder zu löschen.
Häufig wird hier die Datei "Findlink.xla" genannt. Ist das wirklich die einzige Möglichkeit? Gibt es nicht zumindest eine VBA Lösung, existierende Verknüpfungen zu anderen Dateien zu entfernen?
Über ThisWorkbook.LinkSources(xlExcelLinks) kann ich ja alle existierenden Verknüpfungen ansprechen.
Vielen Dank im Voraus!
imitis

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Klassiker:Verknüpfungen zu anderen Dateien löschen
08.09.2004 11:11:52
HermannZ
Hallo imitis,
mit diesem Makro werden alle externen Verknüpfungen gelöst,

Sub ExterneVerknüpfungenAuflösen()
'// Auflösung externer Verknüpfungen in Tabellenblättern
Dim Tab1 As Object
Dim Cell1 As Object
Dim AlleFormeln As Object
On Error GoTo Fehlerbehandlung
'// Schleife für alle Tabellenblätter der aktiven Mappe
For Each Tab1 In ActiveWorkbook.Worksheets
Set AlleFormeln = Tab1.Cells.SpecialCells(xlFormulas, 23)
'// Schleife für alle Zellen, die Formeln enthalten
'// Der Backslash ("\") in der Formel dient als Erkennungsmerkmal für
'// das Vorliegen einer externen Verknüpfung
For Each Cell1 In AlleFormeln
If InStr(Cell1.Formula, "\") > 0 Then
If Cell1.HasArray Then
'// Matrix kann nur als ganzes ersetzt weden
Cell1.CurrentArray.Select
Selection.Copy
Else
Cell1.Formula = Cell1.Value
End If
End If
Next Cell1
Next Tab1
Exit Sub
Fehlerbehandlung:
'// Fehler 1004 tritt auf, wenn Tabellenblatt keine Formeln enthält
If Err = 1004 Then Resume Next Else             '//MeldungsDlg Fehler(FehlerNr)
Resume Next
End Sub

Gruß hermann
Anzeige
passt...aber
08.09.2004 11:28:08
imtis
Hallo Hermann,
die Verknüpfungen werden alle soweit gelöscht, allerdings ist unter "Bearbeiten - Verknüpfungen" immer noch eine von vorher 5 Verknüpfungen zu sehen, gefragt wird nach dem Öffnen der Datei allerdings nicht mehr danach.
Vielen Dank,
imitis
AW: passt...aber
Ulf
Links können auch in Charts und Namen stecken!
Ulf
irgendwie alles nicht so richtig...
08.09.2004 11:48:31
imtis
Hallo nochmal,
irgendwie arbeitet das Makro doch nicht so, wie es soll. Meine Idee war folgende: Lege ich die Verknüpfung auf die aktuelle Datei, sollte die Verknüpfung ja auch verschwinden. Leider führt folgender Quelltext noch zu einer Fehlermeldung:
-------------------

Sub VerknuepfungenLoeschen()
Dim AktuelleDatei As String
Dim Mappe As Workbook
Dim VLink As Variant
Dim i As Integer
AktuelleDatei = ActiveWorkbook.Path & "\" & ActiveWorkbook.Name
Set Mappe = ActiveWorkbook
VLink = Mappe.LinkSources(xlExcelLinks)
If Not IsEmpty(VLink) Then
For i = 1 To UBound(VLink)
ActiveWorkbook.ChangeLink Name:= _
VLink(i), newname:=AktuelleDatei, Type:=xlExcelLinks
Next i
End If
End Sub

-------------------
Hat dazu jemand eine Idee?
Vielen Dank schonmal!
imtis
Anzeige
AW: irgendwie alles nicht so richtig...
Andreas
Du sagst nicht welche Fehlermeldung.
Aber kann es sein, dass wenn Du den Link von einer externen Datei auf die aktuelle Datei änderst, dann wird es nicht mehr als ein Link erkannt und die Anzahl von Links wird reduziert? nur so ein Gedanke. (Umweg: von hinten nach vorne)
Fehlermeldung:
08.09.2004 12:04:38
imtis
Die Fehlermeldung lautet:
-------------------------
"Die Formel enthält einen ungültigen Bezug zu einer externen Tabelle"
Der Fehler tritt auf im Abschnitt:
----------------------------------
ActiveWorkbook.ChangeLink Name:= _
VLink(i), newname:=AktuelleDatei, Type:=xlLinkTypeExcelLinks
AW: Fehlermeldung:
Eugen
da kann man leider auch nicht mehr weiter helfen!
Anzeige
?
08.09.2004 12:18:20
imtis
Wie soll ich diesen Beitrag denn jetzt verstehen?
Problem lösbar, aber noch offen
Andreas
Es gibt eine Person, die immer wieder das Forum stört.
Bitte ignorieren.
Ich setze die Frage auf offen
AW: Problem lösbar, aber noch offen
Andreas
Ich habe es jetzt bei mir nachvollzogen.
Dein Makro funktioniert tadellos
Proibier mal
MsgBox "VORHER" & "--" & VLink(i) & "**" & AktuelleDatei
VOR dem Befehl. Vielleicht fällt Dir was auf.
Wie lautet die Formel genau, bei der das problem aufkreuzt.
Sprichst Du Bereiche per Namen an

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige