Herbers Excel-Forum - das Archiv

Autoberechnen abkürzen

Bild

Betrifft: Autoberechnen abkürzen
von: Arthur

Geschrieben am: 04.01.2007 14:28:24
Hallo zusammen.
Ich habe mir eine Excel-Tabelle erstellt, die sich Werte aus verscheidenen Tabellenblättern zusammensucht. Damit die Pflege dieses Konstruktes einfacher wird, habe ich viele Formeln auf Bereich.Verschieben(...) und Vergleich(...) aufgebaut. Dadurch benötigt die Berechnung mehrere Sekunden; und das nach jeder Änderung in jeder Zelle.
Helfen würde beispielsweise, wenn nur das aktuelle Arbeitsblatt berechnet wird; bei Bedarf drücke ich dann die F9, damit alles neu berechnet wird.
Zum Problem:
Wenn ich in der Workbook_Activate den auf xlCalculationManual umstelle und bei der Deaktivierung wieder auf Automatik, dann funktioniert Copy/Paste aus anderen Excel-Dateien nicht mehr.
Wie könnte ich die Neuberechnung einschränken, ohne dass der Bereich zum Kopieren zurückgesetzt wird. Oder kann Application.Calculation "sanfter" umgesetzt werden?
Oder gibt es eventuell eine ganz andere Lösung?
Gruß
Arthur
Bild

Betrifft: AW: Autoberechnen abkürzen
von: daniel eisert

Geschrieben am: 04.01.2007 14:47:54
Hallo
das ist natürlich ein komplexes problem.
mögliche Lösungen hängen auch davon ab, wie dynamisch deine Daten sind.
ich behelfe mir in solchen Fällen oft damit, daß ich, wenn möglich die Formeln durch die Fix-Werte ersetze.
range(xxx).copy
range(xxx).pastespecial xlpastevalues
Wenn doch ab und an eine Neuberechung erfoderlich ist, lasse ich in der ersten Zeile die Formel stehen, um sie dann im Bedarfsfall einfach nach unten zu kopieren.
eine weitere Bremse ist die VERGLEICHS-funktion mit dem 3. Parameter = 0 bzw FALSCH, wenn sie auf grosse Tabellen angewendet wird.
sie lässt sich aber extrem beschleunigen, wenn du als 3. Parameter 1 bzw WAHR verwendest.
das geht aber nur, wenn
- die Suchmatrix nach dem Suchbegriff sortiert ist
- dir klar ist, daß dann bei fehlemden Suchbegriff kein Fehlerwert mehr erscheint, sondern der nächste Wert zurückgegeben wird.
das mal so als Ansatz, ich lass die Frage mal offen für weitere Ideen.
Gruß, Daniel
 Bild