Verknüpfungen in Excel / Datei verschieben

Hallo, Wwwissende!

Ich habe eine Frage zu Excel und Verknüpfungen.
Folgendes Problem:
Ich habe 10 Dateien, die die Jahresstatistik darstellen.
Datei 1 bis 6 enthalten die Basisdaten.
Datei 7 bis 9 ziehen per Verknüpfung die Daten aus Datei 1 bis 6.
Datei 10 ziehen per Verknüpfung die Daten aus Datei 7 bis 9.
Es herrscht also eine einfache hierarchische Baumstruktur.

Diese 10 Dateien habe ich zum Jahresbeginn samt Baumstruktur in einen anderen Ordner verschoben, um am ursprünglichen Platz die neue Jahresstatistik zu erstellen.

Öffne ich nun eine der Dateien 7 bis 10 (die sich mit ihren Verknüpfungen auf jeweils tiefergelegene Dateien beziehen), werde ich gefragt, ob die Verknüpfungen aktualisiert werden sollen. Klicke ich „Ja“, greift die Verknüpfung jedoch nicht auf die Dateien im archivierten Ordner zu, sondern auf den ursprünglichen Platz und somit die neuen Daten. Dies soll jedoch vermieden werden.

  • Gibt es eine Möglichkeit, die Verknüpfungen so zu definieren, dass die Pfade relative und nicht mehr absolute Bezüge aufweisen?

  • Oder ist es möglich, die Verknüpfungen breitflächig zu löschen, ohne dabei die errechneten Werte zu verlieren?

  • Kennt jemand eine Alternative zum Aufbau der Datenbank?

Vielen Dank!
GERDZILLA.

Daten einfrieren
Moin,

also wenn es Dir einfach darauf ankommt, die Daten einzufrieren, kannst Du das leicht mittels „Werte einfügen“ erledigen, sofern die Verknüpfungen über Zell-Formeln hergestellt werden und nicht irgendwie anders (wüsste grad nicht, wie sonst). Damit die die Formel weg und kann auch nicht wieder hergestellt werden, aber bei Daten, die sich nicht mehr verändern, ist das ja egal. Außerdem verschlankst Du damit die Dateien.

Also im einfachsten Falle markierst Du das gesamte Blatt (Strg-A oder Klick in die linke obere Ecke), kopierst dann alles und gehst auf Bearbeiten/Inhalte einfügen und dort auf „Werte“.

Das funktioniert allerdings nicht immer sauber, wenn Du verbundene Zellen dabei hast. Dann muss man ggf. bereichsweise vorgehen oder das per Makro Zelle für Zelle machen.

Ansonsten müsste es auch möglich sein, die Formeln per Suchen/Ersetzen anzupassen. Da steht ja der absolute Pfad drin. Suche nach diesem Pfad und ersetze ihn durch den neuen. Sollte auch gehen.

Relativ is nicht, glaube ich. Dieses Problem habe ich vor ein paar Jahren mal für Bilder gelöst, die als Verknüpfung in PPT/DOC/XLS eingefügt wurden und immer den absoluten Pfad aufwiesen, was beim Versciheben der Datei zum Verlust der Bilder führte. Per Makro konnte man diesen Pfad relativieren. Aber Excel-Formeln … noch nicht probiert, doch ich denke, die werden immer sofort wieder „absulutiert“.

Kristian

Hallo,

also ich würde das Problem so umgehen

C:/Jahresstatistik
2007
2008
2009

cu

Grüezi Gerdzilla

Ich habe 10 Dateien, die die Jahresstatistik darstellen.
Datei 1 bis 6 enthalten die Basisdaten.
Datei 7 bis 9 ziehen per Verknüpfung die Daten aus Datei 1
bis 6.
Datei 10 ziehen per Verknüpfung die Daten aus Datei 7 bis 9.
Es herrscht also eine einfache hierarchische Baumstruktur.

Diese 10 Dateien habe ich zum Jahresbeginn samt Baumstruktur
in einen anderen Ordner verschoben, um am ursprünglichen
Platz die neue Jahresstatistik zu erstellen.

Öffne ich nun eine der Dateien 7 bis 10 (die sich mit ihren
Verknüpfungen auf jeweils tiefergelegene Dateien beziehen),
werde ich gefragt, ob die Verknüpfungen aktualisiert werden
sollen. Klicke ich „Ja“, greift die Verknüpfung jedoch nicht
auf die Dateien im archivierten Ordner zu, sondern auf den
ursprünglichen Platz und somit die neuen Daten. Dies soll
jedoch vermieden werden.

  • Gibt es eine Möglichkeit, die Verknüpfungen so zu
    definieren, dass die Pfade relative und nicht mehr absolute
    Bezüge aufweisen?

Nein die gibt es (ohne den Einsatz von VBA_Programmierung) nicht.
Die einzelnen Dateien können nicht ‚wissen‘, dass sie verschoben worden sind und verweisen daher noch immer auf die alten Pfade.

  • Oder ist es möglich, die Verknüpfungen breitflächig zu
    löschen, ohne dabei die errechneten Werte zu verlieren?

Ja, das kannst Du wie folgt erreichen:

  • Alle Zellen eines Tabellenblattes markieren
  • Kopieren
  • Markierung belassen
  • Menü: ‚Einfügen‘
  • Inhalte einfügen
  • [x]Werte
  • [OK]

Nun sind alle Formeln mit deren Werten überschrieben worden.

Alternativ könntest Du die Dateien im Ordner temporär an einen anderen Ort kopieren, dann die einzelnen Mappen (alle 10) öffnen und dann jede mit ‚Speichern unter‘ an den neuen Pfad verschieben. So passen sich dann alle Bezüge mit an.

am Ende kopierst Du die Original-Daten wieder in den ursprünglichen Ordner und löschst alle bisherigen Eingaben.

Wenn Du die leeren Mappen als Master in einen Backup-Ornder kopierst dann kannst Du künftig nach dem Kopieren einfach diese Master-Dateien wieder verwenden.

  • Kennt jemand eine Alternative zum Aufbau der Datenbank?

Du könntest alle einzelnen Dateien in eine gemeinsame Mappe packen - das kommt dann aber etwas auf die Datenmenge an und ob die Mappe dann überhaupt noch zu handeln ist.


Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

OT

Nein die gibt es (ohne den Einsatz von VBA_Programmierung) nicht.
Die einzelnen Dateien können nicht ‚wissen‘ , dass sie
verschoben worden sind und verweisen daher noch immer auf die
alten Pfade.

Genau dafür gibt es relative Pfade. Warum Microsoft das verpennt hat, frage ich mich schon seit 15 Jahren.

Es könnte alles … so einfach sein … ist es aber nicht.

:wink:

Grüezi Christian

Nein die gibt es (ohne den Einsatz von VBA_Programmierung)
nicht.
Die einzelnen Dateien können nicht ‚wissen‘ , dass sie
verschoben worden sind und verweisen daher noch immer auf
die alten Pfade.

Genau dafür gibt es relative Pfade. Warum Microsoft das
verpennt hat, frage ich mich schon seit 15 Jahren.

Es könnte alles … so einfach sein … ist es aber nicht.

Leider, ja - nur bei Hyperlinks können da relative Pfade verwendet werden.


Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

Verknüpfungen dynamisch, quasi relativ setzen
Hi Gerdzilla,

Ich habe eine Frage zu Excel und Verknüpfungen.

  • Gibt es eine Möglichkeit, die Verknüpfungen so zu
    definieren, dass die Pfade relative und nicht mehr absolute
    Bezüge aufweisen?

jain, ändere deine Pfade so ab, daß du die Dateipfade durch z.b. „K:“ ersetzt. Die Verknüfung sieht dann so aus:

=‚K:[test.xls]Tabelle1‘!$A$1

Vorher manuell über Start ausführen

subst K: C:\test

oder mit Vba (evtl in dem Workbook_Open Ereignis der Personl.xls
aufrrufen:

Sub Subs()
Dim Dos
Dos = Shell(„subst K: c:\test“)
End Sub

Wird nun die datei Test.xls in ein anderes Verzeichnis verschoben so weist du einfach den Buchstaben „K:“ dem neuen Verzeichnispfad zu.

Getestet mit XL2002 auf WinXP.

Wenn es nicht klappt, mal
cmd subst K: c:\test
probieren.

Gruß
Reinhard

Hallo,

wenn Du alle Dateien geöffnet hast, und die Basisdateien 1-6 dann im neuen Ordner speicherst, merkt Excel, dass sich der Pfad gändert hat. Dann die Dateien 7-9 im neuen Ordner abspeichern und schließlich Datei 10. Du darfst das ganze nur nicht über den Explorer machen, da dann Excel nicht merkt, dass Verschoben wird. Nur über offene Dateien in Excel geht es.

Oliver

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]