M
MSCom
Neuer Benutzer
Threadstarter
- Dabei seit
- 20.09.2016
- Beiträge
- 1
Hallo Zusammen,
wir haben ein massives Problem mit dem volatilen (wird bei jeder Änderung sofort ausgeführt - unabhängig davon, ob von dieser Zelle Nachfolgerzellen betroffen sind oder nicht) INDIREKT-Befehl.
In den Dateien kommen weit über 10.000 INDIREKT-Befehle zum Einsatz, weil es sehr komplexe Berechnungen für sehr unterschiedliche Ausgangssituationen gibt.
Vorher:
Alte Excel-Dateien unter Excel 2003 benötigen für die Neuberechnung der volatilen ca. 9.000 INDIREKT-Befehle in einer Arbeitsmappe ca. 3 Sekunden pro Eingabe.
Seit dem Umstieg auf neuere Office:
Ab Excel 2010 HOME and Business (und ebenfalls getestet unter Excel 2013 Pro Plus innnerhalb der Domäne auf einem 2012er Terminalserver) braucht jede Eingabe stattdessen zwischen 7 und 10 Minuten(!) für die Neuberechnung der volatilen ca. 9.000 INDIREKT-Befehle in einer Arbeitsmappe.
Also: ich änderen einen einzigen Zelle z.B. von "2" auf "3" und dann warte ich tatsächlich(!) 7 Minuten, bevor ich weitermachen kann...
Dies Problem tritt im Kompatilibiltätsmodus auf.
Dies Problem tritt auch auf, wenn die Dateien als 2010 oder 2013er-Dateien gespeichert werden (und auch nach Schließen und erneutem Öffnen).
Dies Problem tritt auch in völlig neu erstellten Arbeitsmappen in 2010 oder 2013 auf, wenn nur genügend INDIREKT-Befehle drin stehen.
Liegt die Datei auf einer Workstation auf der lokalen Festplatte, dauert es "nur" ca. 30 bis 60 Sekunden (statt 3 Sekunden in Excel 2003) für die Berechnung pro Eingabe.
Liegt sie dort auf einem USB-Stick oder einer USB-Festplatte, dauert es "nur" ca. 15 bis 30 Sekunden (statt 3 Sekunden in Excel 2003).
Sobald die Datei im Netzwerk liegt (z.B. auf dem sehr schnellen Fileserver), kommt sie auf ca. 7 bis 10 Minuten.
Soweit ich ersehen kann, könnte dies an einem neuen Umgang mit dem INDIREKT-Befehl seit Excel 2007 liegen...
Beim FileMonitoring stellt sich heraus, dass Excel ab 2010 jeweils 12 x je INDIREKT-Befehl auf die Ordner zugreift. Und dies unabhängig davon, ob das Ziel des INDIREKT-Befehls sich im selben Blatt befindet, in der selben Arbeitsmappe in einem anderen Blatt, oder das Ziel nicht vorhanden ist (Verweis auf ein Blatt, dass in dieser Berechnung nicht benötigt wird und nicht in die Arbeitsmappe eingefügt wurde).
Je INDIREKT-Befehl sucht Excel dann je zweimal nach ZielDesIndirektBefehls.xlsx, .xlsm, .xlam, .xlab, .xls, .htm, .lnk.
Dies könnte auch der Grund dafür sein, dass es auf der lokalen Platte soviel "schneller" geht,
weil dort keine Domänen-Zugriffs-Prüfungen stattfinden.
Im Ergebnis eines der Testläufe ergaben sich für 9.243 INDIREKT-Befehle 653.574 Dateizugriffe für die Änderung nur eines Zellwertes.
Kann man das Durchsuchen der Ordner für den INDIREKT-Befehl eventuell abstellen (Excel-Einstellungen, per Registry-Key, oder...)?
Gibt es hier evt. schon eine andere Lösung?
Wie geschrieben kann man sich selbst eine Testdatei mit INDIREKT-Befehlen erstellen und diese einfach runterziehen, bis man ca. 10.000 Stück davon hat.
Und nochmal: Unter Windows-XP und Excel 2003 bereitet das keinerlei Probleme (3 Sekunden je Eingabe sind dann zu ertragen).
Für hilfreiche Antworten wäre ich sehr dankbar.
Excel-Indirekt
wir haben ein massives Problem mit dem volatilen (wird bei jeder Änderung sofort ausgeführt - unabhängig davon, ob von dieser Zelle Nachfolgerzellen betroffen sind oder nicht) INDIREKT-Befehl.
In den Dateien kommen weit über 10.000 INDIREKT-Befehle zum Einsatz, weil es sehr komplexe Berechnungen für sehr unterschiedliche Ausgangssituationen gibt.
Vorher:
Alte Excel-Dateien unter Excel 2003 benötigen für die Neuberechnung der volatilen ca. 9.000 INDIREKT-Befehle in einer Arbeitsmappe ca. 3 Sekunden pro Eingabe.
Seit dem Umstieg auf neuere Office:
Ab Excel 2010 HOME and Business (und ebenfalls getestet unter Excel 2013 Pro Plus innnerhalb der Domäne auf einem 2012er Terminalserver) braucht jede Eingabe stattdessen zwischen 7 und 10 Minuten(!) für die Neuberechnung der volatilen ca. 9.000 INDIREKT-Befehle in einer Arbeitsmappe.
Also: ich änderen einen einzigen Zelle z.B. von "2" auf "3" und dann warte ich tatsächlich(!) 7 Minuten, bevor ich weitermachen kann...
Dies Problem tritt im Kompatilibiltätsmodus auf.
Dies Problem tritt auch auf, wenn die Dateien als 2010 oder 2013er-Dateien gespeichert werden (und auch nach Schließen und erneutem Öffnen).
Dies Problem tritt auch in völlig neu erstellten Arbeitsmappen in 2010 oder 2013 auf, wenn nur genügend INDIREKT-Befehle drin stehen.
Liegt die Datei auf einer Workstation auf der lokalen Festplatte, dauert es "nur" ca. 30 bis 60 Sekunden (statt 3 Sekunden in Excel 2003) für die Berechnung pro Eingabe.
Liegt sie dort auf einem USB-Stick oder einer USB-Festplatte, dauert es "nur" ca. 15 bis 30 Sekunden (statt 3 Sekunden in Excel 2003).
Sobald die Datei im Netzwerk liegt (z.B. auf dem sehr schnellen Fileserver), kommt sie auf ca. 7 bis 10 Minuten.
Soweit ich ersehen kann, könnte dies an einem neuen Umgang mit dem INDIREKT-Befehl seit Excel 2007 liegen...
Beim FileMonitoring stellt sich heraus, dass Excel ab 2010 jeweils 12 x je INDIREKT-Befehl auf die Ordner zugreift. Und dies unabhängig davon, ob das Ziel des INDIREKT-Befehls sich im selben Blatt befindet, in der selben Arbeitsmappe in einem anderen Blatt, oder das Ziel nicht vorhanden ist (Verweis auf ein Blatt, dass in dieser Berechnung nicht benötigt wird und nicht in die Arbeitsmappe eingefügt wurde).
Je INDIREKT-Befehl sucht Excel dann je zweimal nach ZielDesIndirektBefehls.xlsx, .xlsm, .xlam, .xlab, .xls, .htm, .lnk.
Dies könnte auch der Grund dafür sein, dass es auf der lokalen Platte soviel "schneller" geht,
weil dort keine Domänen-Zugriffs-Prüfungen stattfinden.
Im Ergebnis eines der Testläufe ergaben sich für 9.243 INDIREKT-Befehle 653.574 Dateizugriffe für die Änderung nur eines Zellwertes.
Kann man das Durchsuchen der Ordner für den INDIREKT-Befehl eventuell abstellen (Excel-Einstellungen, per Registry-Key, oder...)?
Gibt es hier evt. schon eine andere Lösung?
Wie geschrieben kann man sich selbst eine Testdatei mit INDIREKT-Befehlen erstellen und diese einfach runterziehen, bis man ca. 10.000 Stück davon hat.
Und nochmal: Unter Windows-XP und Excel 2003 bereitet das keinerlei Probleme (3 Sekunden je Eingabe sind dann zu ertragen).
Für hilfreiche Antworten wäre ich sehr dankbar.
Excel-Indirekt