Registriert seit: 11.04.2014
Version(en): 2021
Hallo,
ich habe hier eine Suchroutine die alle Dateien und deren Tabellen eines Ordner nach bestimmten Suchkriterien durchsucht und die Suchergebnisse entsprechend auflistet. Soweit so gut und das funktioniert auch wunderbar und sehr zuverlässig, nur - und jetzt das Problem - findet sich in irgend einem Tabellenblatt eine Verknüpfung/Bezug zu einer Quelle die nicht mehr existiert bzw. an dem vermeintlichen Ort existiert, dann erscheint der Hinweis "Diese Arbeitsmappe enthält Verknüpfungen zu mindestens einer externen Quelle, die möglicherweise nicht sinder sind.". Schließt man dann diesen Hinweis so geht die Sucher munter weiter und bringt auch dann die entsprechenden gewünschten Ergebnisse. Aber: Erstens nervt es, diesen Hinweis möglicherweise bei einer Vielzahl von Dateien jedesmal schließen zu müssen und Zweitens sollten diese fehlerhaften bzw. falschen Bezüge bereinigt werden.
Wie kann man die Quelle anzeigen lassen, wo diese Verknüpfungen vorhanden sind? Mit On Error habe ich keinen Erfolg verbuchen können, denn es handelt sich offensichtlich nicht um eine Fehlermeldung doch durch was wird dieser Hinweis ausgelöst und wie kann man diese Stelle lokalisieren?
Für zielführende Hinweise wäre ich sehr dankbar.
Gruß Günter aus der Helden-, Messe-, Musik-, Buch-, Universitäts- und Autostadt Leipzig
Registriert seit: 12.04.2014
Version(en): Office 365
Hallo Günter Möglichkeiten zum Auffinden von Verknüpfungen zu anderen Arbeitsmappen- Suchen nach Dateiendungen (z.B. xls, xlsx, xlsm). - Daten -> Verbindungen -> Verbindungen- Formeln -> Namensmanager- Bedingte Formatierungen (ab XL2010) - Gültigkeitsprüfung (ab XL2010) Blogeintrag bei contextures.comBlogeintrag bei excelnova.orgBlogeintrag bei exceldashboardtemplates.comBlogeintrag bei trumpexcel.comAddIn Findlinkhttp://nhsexcel.com/how-to-break-resista...-in-excel/http://superuser.com/questions/915270/fo...t-be-found
Wir sehen uns! ... Detlef
Meine Beiträge können Ironie oder Sarkasmus enthalten.
Registriert seit: 10.04.2014
Version(en): 2016 + 365
Registriert seit: 12.04.2014
Version(en): Office 365
Nett. :21:
Wir sehen uns! ... Detlef
Meine Beiträge können Ironie oder Sarkasmus enthalten.
Registriert seit: 05.10.2014
Version(en): 2013 Pro plus
Moin, ich hatte das gleiche Problem.
Wenn das Fenster mit der Aktualisierung erscheint, habe ich auf aktualisieren geklickt. Da kam ein Fenster mit weiter oder Verknüpfung bearbeiten, auf Verknüpfung bearbeiten geklickt Dann wurde mir die Verknüpfung angezeigt und ich konnte die Quelle ändern, öffnen oderdie Verknüpfung löschen.
Beste Grüße Thomas
Registriert seit: 11.04.2014
Version(en): 2021
13.07.2017, 18:05
(Dieser Beitrag wurde zuletzt bearbeitet: 13.07.2017, 18:05 von Glausius.)
Hallo,
danke für die Antworten, leider gut und schön, jedoch nicht treffend!
Wenn der Hinweis aufgeht, gibt es nur die Buttons "Aktualisieren", "Nicht aktualisieren" und "Hilfe"! Das mit dem "Bearbeiten" kenne ich in einer einzelnen Arbeitsmappe, hier läuft aber ein VBA-Code im Hintergrund und der wird nur durch diesen Hinweis unterbrochen und anschließen, egal was man antwortet, weiter abgearbeitet.
Deshalb suche ich die Möglichkeit, die auslösende Quelle für diesen Hinweis per VBA zu orten. Dabei genügt der Dateiname, denn die Verknüpfung kann dann ja manuell in dieser gelöscht werden. Entstanden sind die Verknüpfungen durch Kopieren und Verschieben von Datenbereichen und damit eigentlich sinnlos. Allerdings habe ich noch nicht alle von shift-del angebotenen Links durchforstet, ob da ein brauchbarer Hinweis dabei ist.
Gruß Günter aus der Helden-, Messe-, Musik-, Buch-, Universitäts- und Autostadt Leipzig
Registriert seit: 05.10.2014
Version(en): 2013 Pro plus
Ich bin jetzt nicht der Profi, aber mach doch mal ne Kopie und entferne den Code. Und wenn du dann wieder die Datai öffnest solltest du eigentlich an die Verknüpfung kommen. Ob das klappt weiß ich nicht, aber einen Versuch wäre es wert.
Beste Grüße Thomas
Registriert seit: 29.09.2015
Version(en): 2030,5
Du verrätest uns nicht wie das Workbook geöffnet wird ???? Code: Sub M_snb() With Workbooks.Open("G:\OF\beispiel.xlsx", False) End With End Sub
Registriert seit: 11.04.2014
Version(en): 2021
Hallo snb, doch ich verrate den Code der die Dateien einzeln öffnen, durchforstet und dann wieder schließt. Ich denke, es ist nur dieser Ausschnitt wichtig und habe deshalb aus dem komplexen Projekt nur diesen Teil hier eingestellt: Code: For i = 1 To UBound(strDateien) With Workbooks.Open(strDateien(i)) z = Left(ActiveWorkbook.Name, 4) On Error GoTo 0 For Each ws In ActiveWorkbook.Worksheets If Left(ws.Name, 2) <> "AW" And _ ws.Name <> "Konten" And _ Left(ws.Name, 1) <> "." And _ ws.Name <> "Steuer" And _ Left(ws.Name, 3) <> "Neu" And _ Left(ws.Name, 5) <> "Anlei" Then 'Kontenblätter von der Suche ausschließen With ws.Range(ws.Cells(4, SuchSpalte(1)), ws.Cells(65536, SuchSpalte(1))) If IsNumeric(SuchKrit(1)) Then Set c = .Find(CDbl(SuchKrit(1)), LookAt:=xlWhole, LookIn:=xlFormulas) Else Set c = .Find(SuchKrit(1), LookAt:=xlPart, LookIn:=xlValues) End If If Not c Is Nothing Then firstAddress = c.Address Do x = c.Row If k = 1 Then Auslesen Else merker = 0 For p = 2 To k 'If Sheets(ws.Name).Cells(x, SuchSpalte(p)) = SuchKrit(p) Then If InStr(1, Sheets(ws.Name).Cells(x, SuchSpalte(p)), SuchKrit(p)) Then merker = merker + 1 End If Next p If merker = k - 1 Then Auslesen End If If j > 1000 Then Exit For Set c = .FindNext(c) Loop While Not c Is Nothing And c.Address <> firstAddress End If End With End If Next Application.DisplayAlerts = False ActiveWorkbook.Close End With Next i
Mit On Error Goto Fehlerhandling vor oder nach dem Workbook.Open passiert nichts, es kommt der vorgenannte Hinweis und weiter geht es im Code.
Gruß Günter aus der Helden-, Messe-, Musik-, Buch-, Universitäts- und Autostadt Leipzig
Registriert seit: 11.04.2014
Version(en): Office 2007
15.07.2017, 20:30
(Dieser Beitrag wurde zuletzt bearbeitet: 15.07.2017, 20:30 von Steffl.
Bearbeitungsgrund: UpdateLinks von 2 auf 3 geändert
)
Hallo Günter, vielleicht so? (ungetestet und nochmals geändert siehe Änderungsdatum) Code: With Workbooks.Open(strDateien(i), UpdateLinks:=3)
Gruß Stefan Win 10 / Office 2016
|