Anzeige
Archiv - Navigation
892to896
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
892to896
892to896
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Verknüpfte Dateien automatisch öffnen

Verknüpfte Dateien automatisch öffnen
31.07.2007 19:34:23
Bernd
Hallo,
ich habe eine Excel-Datei, die mit 3 anderen Excel-Dateien verknüpft ist. Nun sollen beim Starten der ersten Excel-Datei zugleich auch die 3 verknüpften Dateien geöffnet werden. Wenn möglich, sollte das Öffnen dieser Dateien explizit bestätigt werden. Die verknüpften Dateien befinden sich in anderen Verzeichnissen und sollen dort auch weiterhin verbleiben.
Gruß
Bernd

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Verknüpfte Dateien automatisch öffnen
31.07.2007 19:44:28
Oberschlumpf
Hi Bernd
Schreib das hier ins Open-Ereignis deiner "Start"-Datei:

Dim lbMsg As Byte
Application.EnableEvents = False 'Ereigniskontrolle abschalten, wenn gewünscht - wenn nicht, _
diese Zeile löschen
lbMsg = MsgBox("Soll die Datei dateiname1.xls geöffnet werden?", vbQuestion + vbYesNo, " _
Frage")
If lbMsg = vbYes Then Workbooks.Open "DeinPfad\dateiname1.xls"
lbMsg = MsgBox("Soll die Datei dateiname2.xls geöffnet werden?", vbQuestion + vbYesNo, " _
Frage")
If lbMsg = vbYes Then Workbooks.Open "DeinPfad\dateiname2.xls"
lbMsg = MsgBox("Soll die Datei dateiname3.xls geöffnet werden?", vbQuestion + vbYesNo, " _
Frage")
If lbMsg = vbYes Then Workbooks.Open "DeinPfad\dateiname3.xls"
Application.EnableEvents = True 'Ereigniskontrolle wieder einschalten


Hilft das?
Ciao
Thorsten

Anzeige
AW: Verknüpfte Dateien automatisch öffnen
01.08.2007 08:20:00
Bernd
Hallo Thorsten,
leider klappt es auf Anhieb nicht. Eingefügt wird es doch als "Private Sub Workbook_Open()", oder?
Und dann muss ich manuell die Pfade eingeben, oder?
Leider bekomme ich ich bei lbMsg = MsgBox("Soll die Datei usw. einen Syntaxfehler!
Darüber hinaus noch folgende Frage:
Ist es unbedingt notwendig, dass man die Pfade und Dateinamen manuell in den Code eingeben muss? Eigentlich sind die doch in den Verknüpfungen der Excel-Datei bereits enthalten!
Gruß
Bernd

AW: Verknüpfte Dateien automatisch öffnen
01.08.2007 09:22:00
Oberschlumpf
Hi Bernd
Die Syntaxfehler kommen daher, weil der obige Code durch die Forumsansicht etwas "zerschossen" wurde.
Nachdem ich ihn wieder "gerade rückte", funzt der Code auch wieder.
Hier die Datei mit genau obigem Code als Bsp:
https://www.herber.de/bbs/user/44658.xls
Sicherlich muss man den Pfad nicht unbedingt im Code eintragen, wenn selbiger schon im Verweis vorhanden ist. Man kann den Pfad aus einem Hyperlink auslesen.
Aber....
...du verrätst NICHT, um welche Dateien es sich handelt.
Wie soll ich also hier mit Hyperlinks arbeiten, wenn mir die richtigen nicht bekannt sind?
Am besten wäre es, wenn du meinen Code in deine Tabelle einträgst, und uns diese Tabelle - inkl. der Hyperlinks - zur Verfügung stellst.
Hilft das so weit?
Ciao
Thorsten

Anzeige
AW: Verknüpfte Dateien automatisch öffnen
01.08.2007 12:23:32
Bernd
Hallo Thorsten,
anbei eine Musterdatei mit den gewünschten Anpassungen.

Die Datei https://www.herber.de/bbs/user/44668.xls wurde aus Datenschutzgründen gelöscht


Verknüpfte Dateien sind:
1. Quelle1 in c:\Quellen
2. Quelle 2 in c:\Quellen
Beste Grüße
Bernd

AW: Verknüpfte Dateien automatisch öffnen
01.08.2007 13:32:11
Oberschlumpf
Hi Bernd
So?
https://www.herber.de/bbs/user/44670.xls
Als Grundlage dienen die Zellen A1, A2 und A3.
Es steht zwar nur in A1 + A2 ein Verweis drin. Aber genau deswegen habe ich im Code auch A3 einbezogen, damit du sehen kannst, wie der Code bei nicht Vorhandensein eines Wertes reagiert.
Den Code musst du natürlich noch an deine Bedürfnisse anpassen, wenn A1,A2 + A3 in deiner Originaldatei nicht die Zellen sind, um die es dir geht.
Hilft das?
Ciao
Thorsten

Anzeige
AW: Verknüpfte Dateien automatisch öffnen
01.08.2007 15:15:00
Bernd
Hi Thorsten,
leider tut sich bei mir gar nichts, wenn ich die Datei öffne, d.h. weder eine Abfrage wird erzeugt, noch die Dateien geöffnet. Was mach' ich den falsch?
Saludos,
Bernd

AW: Verknüpfte Dateien automatisch öffnen
01.08.2007 16:17:00
Oberschlumpf
Hi Bernd
Frage 1:
Benutzt du zum Testen erst mal meine Bsp-Datei, in der ja in A1 + A2 Werte aus anderen Dateien stehen?
Frage 2:
Ist die Ereignis-Verfolgung (Application.EnableEvents) eingeschaltet?
Um sicher zu gehen, dass sie on ist, mach mal das hier:
1. Lass dir im VBA-Editor über Ansicht/Direktfenster das Direktfenster anzeigen
2. Gib im Direktfenster diesen Befehl ein - zum Schluß Enter-Taste drücken
Application.EnableEvents = True
3. Schließ die Bsp-DAtei und öffne sie erneut
Spätestens jetzt müsste etwas passieren.
Frage 3:
Hast du beim Start der Datei auch die Makros aktiviert?
Es wäre klug, dieses bei einer Datei mit Makros zu tun ;-)
Frage 4:
Sind in A1 + A2 die Verweise noch richtig eingetragen?
Ich stellte gerade fest (sitze nun an einem anderen PC), dass sich die Verweise nicht mehr auf C:\Quelle1.xls und ...2.xls beziehen, sondern auf einen anderen Pfad.
Frage 5:
Hast du "meinen" Code in deine Originaldatei an der falschen Stelle eingefügt?
Der Code MUSS im Open-Ereignis der Datei stehen.
Wenn all diese Tipps nix bringen, speicher bitte genau die Datei, in der nach deiner Meinung nix passiert, mal auf dem Forumsserver.
Bis später
Thorsten

Anzeige
AW: Verknüpfte Dateien automatisch öffnen
01.08.2007 16:42:32
Bernd
Hi Thorsten,
Es lag an der Ereignis-Verfolgung! Ist die standardmäßig nie aktiviert? Auf jeden Fall scheint es nun zu klappen und ich hoffe mal, dass ich ich auch was dabei gelernt hab'!
Besten Dank erstmal,
Gruß
Bernd

AW: Verknüpfte Dateien automatisch öffnen
01.08.2007 17:31:00
Oberschlumpf
Hi Bernd
Die Ereignis-Verfolgung ist standardmäßig immer aktiviert (bei jedem Start von Excel - dem Programm an sich, nicht nur eine Datei in Excel)
Wenn aber ein Code mit dem Befehl startet "Ereignisverfolgung = Aus" und dann mitten im Code abgebrochen wird, weil ein Fehler auftritt oder so, dann bleibt die Ereignisverfolgung so lange aus, bis sie entweder im Direktfenster oder irgendwo im Code - der neu gestartet wurde - wieder eingeschaltet wird.
Ciao
Thorsten

Anzeige
AW: Verknüpfte Dateien automatisch öffnen
02.08.2007 10:51:21
Bernd
Hallo Thorsten,
ich muss nochmal nachfragen, nachdem ich nun ein wenig "Praxiserfahrung" mit dem Code gesammelt habe:
1.)
Das manuelle Starten der Ereignisverfolgung durch Eingabe im Direktfenster lässt sich nicht automatisieren?
2.)
Wenn ich es richtig verstanden habe, dann muss ich die Pfade einmalig in den Zellen (im Beispiel A1-A3) manuell eintragen, damit es funktioniert, oder? Die in Excel unter "Bearbeiten/Verknüpfungen ja bereits hinterlegten Links lassen sich nicht automatisch "auslesen"?
3.) Ich habe eine Exceldatei ("Datei 1"), die wiederum auf eine andere Excel-Datei ("Datei 2") zugreift und diese ist wiederum auf eine andere Excel-Datei verlinkt. Ich habe nun in der Datei 1 die Links auf die anderen 2 Dateien gesetzt, was auch gut funktioniert (Insofern würde das Abgreifen der Links aus den Verknüpfungen gar nichts bringen, da Datei 1 mit Datei 3 ja gar nicht direkt verknüpft ist).
Was mir aber aufgefallen ist: Wenn ich den Code in Datei 1 und Datei 2 einbaue (Codes jeweils individuell angepasst), dann hätte ich erwartet, dass beim Öffnen der Datei 1 auch Datei 2 UND Datei 3 aufgemacht wird. Leider wird Datei 3 aber nicht geöffnet, es kommt auch keine Nachfrage beim Start von Datei (das funktioniert)
Gruß
Bernd

Anzeige
AW: Verknüpfte Dateien automatisch öffnen
02.08.2007 16:36:00
Oberschlumpf
Hi Bernd
zu 1.
die Ereignis-Verfolgung muss manuell NUR wieder aktiviert werden, wenn sie im Code deaktiviert wurde, und der Code vorm wieder-Aktivieren wegen Fehler oder so unterbrochen wurde.
Und da du ja schreibst, dass der Code einwandfrei funzt, musst du die Ereignis-Verfolgung nicht per Hand aktivieren, da dies im Code in der letzten Zeile erfolgt.
Wenn es da doch Probleme gibt, liegts nicht an meinem Code.
zu 2.
Hast du nicht richtig verstanden.
Ich erwähnte vorher mal, dass bei mir andere Pfade drin standen. Das ist aber NICHT Standard, sondern der Grund war, dass "meine" Bsp-DAteien quelle1.xls + ...2.xls nicht unter C:\quellen gespeichert war.
In den Zellen mit Verweisen auf andere Dateien müssen halt die richtigen Pfade und Dateinamen stehen. Wenn du das geschafft hast, dann wird der Pfad und Dateiname beim Öffnen der Datei automatisch aus den Verweisen ausgelesen und bei Bedarf (JA-Antwort, ob Datei1,2,3 geöffnet werden soll), werden diese DAteien auch geöffnet.
zu 3.
Zitat aus deiner Start-Frage:
"ich habe eine Excel-Datei, die mit 3 anderen Excel-Dateien verknüpft ist"
Daraus geht für mich hervor, dass du EINE Datei hast, in der es Verknüpfungen zu DREI anderen Dateien gibt.
Nicht daraus hervor geht, dass Datei1 mit Datei2 und Datei2 mit Datei3 verknüpft ist.
zu deinem letzten Absatz:
der Code ist so programmiert, dass er NUR in Datei1 eingefügt werden soll, aber NICHT auch in Datei2 und Datei3. Entsprechend angepasst (wie du schreibst) müssten die Dateien sich ja nun gegenseitig öffnen - was nach meinem bisherigen Verständis deines Problems zumindest für mich keinen Sinn ergibt - und von mir ja auch gar nicht so gewollt war.
Ich weiß nun leider keine Lösung(en) mehr.
Ciao
Thorsten

Anzeige
AW: Verknüpfte Dateien automatisch öffnen
02.08.2007 22:29:33
Bernd
Hallo Thorsten,
ich glaube, dass wir evtl. aneinander vorbei reden. Deshalb nochmals zu der Datei:
1.)
Muss ich wohl als gegeben hinnehmen. Wenn was mir den verknüpften Dateien schiefgeht, muss man halt daran denken, die Ereignisverfolgung wieder anzuschalten.
2.)
Ich muss im Code doch fest die Zellen vorgeben, wo es einen Bezug zu einer externen Quelldatei gibt, wenn also z.B. ein Bezug in B14 steht, dann muss ich auch explizit auf Zelle B14 im Code verweisen, damit der Pfad ausgelesen werden kann. Wenn die Bezüge über die gesamte Datei verstreut sind (also auch in anderen Registerblättern), muss ich wohl explizit die Zellen im Code angeben, ist doch so?!
Zu deiner Beispielsdatei nochmals: Was soll denn passieren, wenn in B3 nichts steht? Bei mir jedenfalls passiert gar nichts, ist doch so in Ordnung, oder?
Im Excel-Menü "Verknüpfungen" findet man doch nur auch nur die allgemeine Angabe, dass die Datei mit irgendwelchen Quelldateien verknüpft ist, also keinen Hinweis, so sich genau der Bezug befindet. Dort kann man ja auch manuell die verknüpften Dateien öffnen und zwar ebenfalls mit der Nachfrage, ob man gerne aktualisieren möchte. Insofern stellt sich mir schon die Frage, ob man dieses Feature von Excel micht auch nutzen kann, ohne dass man dieses Menü explizit aufrufen muss.
3.) Sorry, ich habe ziemlich viele Dateien, die miteinander verknüpft sind. In der Mehrheit der Fälle ist es auch so , dass nur in der ersten Datei Verknüpfungen enthalten sind. Leider gibt es auch paar Dateien, wo auch die Quelldateien nochmals auf andere Dateien zugreifen (Ich hatte schon zeitweise mehr als 80 Excel-Dateien gleichzeitig geöffnet!!!). ich dachte, dass würde durch Deinen Code auch abgedeckt, wenn man den in die anderen Datein einbaut, deshalb wollte ich auch keinen eigenständigen Thread eröffnen.
Die Dateien sollen sich auch nicht gegenseitig öffnen, sondern nacheinander. Mal ein Beispiel:
Datei 1 sammelt z.B. Preise von USD-Terminkontrakten auf Schweinebäuche. Die Bewertung der einzelnen Kontrakte erfolgt wiederum in eigenen Dateien (Quelldateien). Und in diese Dateien laufen wiederum Daten aus weiteren Dateien rein, z.B. eine zentrale Datei, in der Devisenkurse angezogen werden (also USD). Folglich macht es doch durchaus Sinn, dass Datei 1 mit Datei 2 und diese wiederum mit der zentralen Datei 3 verknpft ist?
Ich hoffe, ich konnte nun etwas "Fleisch" zu meinen Fragen liefern und zur Sinnfindung beitragen...
In diesem Sinne wünsche ich noch eine schönen Abend und nochmals besten Dank für den Code, der mit jetzt schon einige Zeit spart und eine Qualitätsverbesserung darstellt, da man das manuelle Öffnen der verknüfpfen Dateien unter Stress durchaus mal vergessen kann.
Muchos Saludos
Bernd

Anzeige
AW: Verknüpfte Dateien automatisch öffnen
03.08.2007 05:17:00
Oberschlumpf
Hi Bernd
zu 1.
genau! :-)
zu 2.
Zitat aus deinem vorletzten 2.
"Wenn ich es richtig verstanden habe, dann muss ich die Pfade einmalig in den Zellen (im Beispiel A1-A3) manuell eintragen"
hier nachzulesen unter 2. : https://www.herber.de/forum/messages/892949.html
Da fragst du nach den Eintragungen in den Zellen
Zitat aus deinem letzten 2.
"Ich muss im Code doch fest die Zellen vorgeben...."
Jetzt auf einmal schreibst du vom Code
Wenn du schon im vorletzten 2. was anderes meintest (den Code), dann hättest du auch schon im vorletzten 2. was anderes schreiben sollen...du verstehst? ;-)
Ich kann nur auf das reagieren/antworten, was mir geschrieben wird.
Wenn aber nicht das geschrieben wurde, was gemeint war, dann sind Missverständnisse vorprogrammiert.
Aber nun gut.
Ich hab noch mal von vorne angefangen - mit programmieren - und habe nun versucht, es so zu lösen, dass eine fixe Angabe von Zelladressen im Code nicht mehr erforderlich ist.
Ja, es geht auch OHNE, dass man im Code die Zellen eintragen muss, die Verknüpfungen enthalten :-)
Damit du besser verstehst, was ich meine, habe ich ein Bsp vorbereitet.
Ich habe eine startdatei.xls erstellt, die Verknüpfungen zu 5 anderen Dateien enthält.
quelle1.xls
...
quelle5.xls
Voraussetzung:
Die Dateien quelle1.xls bis quelle5.xls MÜSSEN alle im Verzeichnis C:\QUELLEN gespeichert sein.
Die Datei startdatei.xls kann in einem beliebigen Verzeichnis gespeichert werden.
Wenn du in diesem Verzeichnis schon Dateien mit selben Namen gespeichert hast, solltest du deine Dateien zuvor erstmal woanders speichern und aus C:\QUELLEN entfernen.
Deine Dateien würden sonst mit meinen überschrieben werden!
Wenn das alles geschehen ist, starte mal die Datei startdatei.xls
Nun werden alle genutzten Zellen überprüft, ob sie Verknüpfungen zu anderen Dateien enthalten.
Wenn dem so ist, wirst du gefragt, ob die verknüpfte Datei geöffnet werden soll.
So weit so gut.
Auch dieser Code ist immer noch nur so programmiert, dass eben nur die Startdatei.xls auf Verknüpfungen überprüft wird.
Ob der neue Code nun auch in allen anderen Dateien mit Verknüpfungen problemlos funktioniert, habe ich nicht getestet - es soll ja auch erst mal nur ein Bsp sein.
einziger Nachteil, den ich nicht beheben konnte:
Schau dir in startdatei.xls die Zelle D4 an.
Diese Zelle erhält seinen Inhalt nicht nur aus einer Verknüpfung, sondern enthält eine Additionsformel, die aus ZWEI Verknüpfungen anderer Dateien besteht.
='C:\Quellen\[quelle1.xls]Tabelle1'!$A$1+'C:\Quellen\[quelle5.xls]Tabelle1'!$A$1
Mein Code öffnet leider nur quelle1.xls aber nicht quelle5.xls
Ich hoffe einfach mal, dass deine Tabellen nur Verknüpfungen OHNE irgendwelche mathematischen Formeln enthalten, oder?
Hier nun meine Dateien zum Testen:
https://www.herber.de/bbs/user/44732.zip
(ach ja, ich h abe, so gut es geht, meinen Code dokumentiert, damit du vllt besser verstehst, was genau der Code macht)
Wie gesagt, sichere vor dem Entpacken der ZIP-Datei den Inhalt deines Verzeichnisses C:\QUELLEN
Boahhhh...sooooo vieeeel Text!
Ich hoffe, dass du baaald endlich zufrieden bist!! :-)
Ciao
Thorsten

Anzeige
AW: Verknüpfte Dateien automatisch öffnen
05.08.2007 21:01:07
Bernd
Hallo Thorsten,
nachdem meine Antwort vom Freitag abend leider nicht im Thread eingetragen wurde (Serverproblem?) jetzt nochmal von vorne:
Zuerst das Positive: Das Öffnen der Dateien klappt nicht nur in der Startdatei, sonden auch in anderen Dateien, sofern man dort den Code ebenfalls implementiert. Top Leistung!
Was weniger gut ist: Die Quelldateien müssen nach Deinen Worten im gleichen Verzeichnis liegen. Leider ist das bei mir eher die Ausnahme. Kann man diese strenge Nebenbedingung irgendwie aushebeln?
Wegen der Formelproblematik: Sverweis/Vergleich oder Wenn/Dann_Bedingungen sind davon hoffentlich nicht betroffen?!
Wegen der Editierbarkeit der Formeln aus https://www.herber.de/forum/archiv/892to896/t893533.htm:
Können Wir das bitte in einem eigenen Thread lassen? Sicherlich hat es ein Stück weit auch damit zu tun, aber wenn wir im ganzem Forum so konsequent wären, dann hätten wir max. 20 Treads mit jeweils 100.000 Einträgen, oder ;-)
Gruß
Bernd

AW: Verknüpfte Dateien automatisch öffnen
07.08.2007 11:23:00
Bernd
Hallo Thorsten,
unter Excel 97 erhalte ich einen Fehler bei Kompilieren : Sub- oder Function nicht definiert und zwar bei Replace (lstrPfad ....
Gruß
Bernd

AW: Verknüpfte Dateien automatisch öffnen
09.08.2007 07:17:00
Bernd
Hallo Thorsten,
bist Du im evtl. im Urlaub oder hast Du meine Frage übersehen?
Danke und Gruß
Bernd

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige