Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1680to1684
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
Inhaltsverzeichnis

Excel >2003 Makros Geschwindigkeit

Excel >2003 Makros Geschwindigkeit
20.03.2019 12:00:40
Ralf
Hallo,
das genannete Thema taucht ja immer wieder mal auf, das ist mir klar.
Punkte wie .ScreenUpdating, .calculation, .enableEvents, .DisplayPageBreaks und .DisplayStatusBar sind da ja die ersten Schritte.
Zu folgenden Fragen habe ich da bisher noch nicht vernünfiges gefunden:
1.: Gibt es eine Möglichkeit das Workbook-Übergreifende berechnen zu unterbinden (Selbst wenn keine Verbindung zwischen den Arbeitsmappen besteht werden immer alle in einer Excel-Instanz geöffneten neu berechnet.)
2.: Gibt es ein Möglichkeit, die Onlinefunktionalitäten wie Theamfunktionen, Anmeldekonten und sonsitgen "Schnickschnack" zu deaktivieren (z.B. wenn ich mit einer reinen Excel Desktop-Version arbeite und auch eine einzelne Exceldatei bearbeite)
3.: Welchen Einfluß hat der "Kompatibilitätsmodus" auf die Geschwindigkeit?
4.: Welchen Einfluß hat die "Bezugsart" auf die Geschwindigkeit (habe öfter beobachtet, das während der Berechnung die Anzeige im "Namensfeld" ständig wechselte zwischen "A1" und "Z1S1".
5.: Gibt es vielleicht sowas wie einen "Excel-light-modus", in welchem ich Excel dann über die API steuern könnte, gewünschte Zellen füllen, berechnen und danach Anzeigen könnte oder so?
Mir brennt dieses Thema schon lange unter den Nägeln, da ich einige Dateien hier habe mit jeweils mehr als 10.000 Zeilen Quelltext und diese gerne wieder annähern an die Berechnungszeiten von Excel 2003 heranführen würde.
Besten Dank schonmal für Eure Tipps
Gruß
Ralf

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel >2003 Makros Geschwindigkeit
20.03.2019 13:59:15
Martin
Hallo Ralf,
ich gebe dir jetzt nur auf Frage 1 (m)eine Antwort und lasse die Fragen daher als "offen".
Du könntest per Ereignismakro (z.B. per Worksheet_Change oder Workbook_SheetChange) den Bereich der Berechnung einschränken. Hier ein Auszug aus der Hilfe:
Dieses Beispiel berechnet die Formeln in den Spalten A, B und C im verwendeten Bereich von Sheet1.

Worksheets("Sheet1").UsedRange.Columns("A:C").Calculate
Viele Grüße
Martin
AW: Excel >2003 Makros Geschwindigkeit
25.03.2019 17:25:10
mmat
Hallo,
1. Application.Calculation = xlManual tut dies. Allerdings musste ich vor kurzem feststellen, dass dies keinen Einfluss auf die Berechnung bedingter Formatierung hat ...
2. Die gibt es vielleicht, ich würde aber nicht mit einem wesentlichen Geschwindigkeitszuwachs rechnen.
3. Das kommt darauf an. "Kompatibilitätsmodus" wird immer angezeigt, egal ob es was gibt, das kompatibilitiert werden muss oder nicht. Wenn es in der Datei irgendwelche Objekte gibt, die durch den Kompatibilitätsmodus behandelt werden müssen, kann das schon einen Einfluß haben.
4. Wahrscheinlich keinen, allerdings kenn ich deine Berechnungen nicht (das Phänomen gibt's bei mir nicht)
5. Das API dient dem Zugriff auf Basisroutinen des Betriebssystems. Da Excel nicht zu Betriebssystem gehört, kann es sowas nicht geben. Trotzdem ist sowas wie eine Batchverarbeitung möglich (nur anders)
Meistens liegts dann doch an den Daten, wenn die Performance aus dem Ruder läuft. Ich würde mal gucken, ob "UsedRange" den tatsächlich ausgefüllten Zeilen/Spalten entspricht. Viel mehr kann ich ohne den Code zu kennen nicht sagen.
vg, MM
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige