- #1
K
klexy
Bekanntes Mitglied
Themenersteller
- Dabei seit
- 04.05.2002
- Beiträge
- 802
- Reaktionspunkte
- 0
- Ort
- Bayern
Situation:
Datei A enthält Daten, die per Makro eingespielt werden.
Datei B enthält Formeln, die sich auf Datei A beziehen
Datei C enthält Formeln, die sich auf Datei B beziehen
Wenn ich Datei C öffne, wird nach der Aktualisierung der Verknüpfungen gefragt. Das bestätige ich und dann dauert es endlos.
Wenn aber Datei B schon geöffnet ist, läuft die Aktualisierung viel schneller.
Ein Makro macht folgendes: Öffnet erst Datei A, dann Datei B, dann Datei C. Nach dem Befehl Calculate speichert und schließt es erst C, dann B, dann A.
Alle 3 Dateien werden am ursprünglichen Ort und in einem anderen Ordner gespeichert.
Problem:
C ist gleich zu.
Wenn B gespeichert wird, fängt er wieder erst mit dem Berechnen an und speichert erst dann.
Gibt es einen Befehl, der sagt: Speichern und schließen ohne neues Berechnen? Denn berechnet wurde ja schon mit Calculate
Irgendwas analog zu ActiveWindow.Close SaveChanges:=0
Datei A enthält Daten, die per Makro eingespielt werden.
Datei B enthält Formeln, die sich auf Datei A beziehen
Datei C enthält Formeln, die sich auf Datei B beziehen
Wenn ich Datei C öffne, wird nach der Aktualisierung der Verknüpfungen gefragt. Das bestätige ich und dann dauert es endlos.
Wenn aber Datei B schon geöffnet ist, läuft die Aktualisierung viel schneller.
Ein Makro macht folgendes: Öffnet erst Datei A, dann Datei B, dann Datei C. Nach dem Befehl Calculate speichert und schließt es erst C, dann B, dann A.
Alle 3 Dateien werden am ursprünglichen Ort und in einem anderen Ordner gespeichert.
Code:
Workbooks.OpenText FileName:=C:\Original\Datei A.xls
Workbooks.OpenText FileName:=C:\Original\Datei B.xls
Workbooks.OpenText FileName:=C:\Original\Datei C.xls
Calculate
ActiveWorkbook.Save
ActiveWorkbook.SaveAs C:\Kopie\Datei C.xls
ActiveWindow.Close
ActiveWorkbook.Save
ActiveWorkbook.SaveAs C:\Kopie\Datei B.xls
ActiveWindow.Close
ActiveWorkbook.Save
ActiveWorkbook.SaveAs C:\Kopie\Datei A.xls
ActiveWindow.Close
Problem:
C ist gleich zu.
Wenn B gespeichert wird, fängt er wieder erst mit dem Berechnen an und speichert erst dann.
Gibt es einen Befehl, der sagt: Speichern und schließen ohne neues Berechnen? Denn berechnet wurde ja schon mit Calculate
Irgendwas analog zu ActiveWindow.Close SaveChanges:=0