Langsame Excel-Datei
#1
Hallo ihr lieben,
ich arbeite seit längerem mit einer Exceldatei, die prinzipiell wunderbar funktioniert und alles macht, was ich möchte. Das Problem: Insbesondere auf meinem Laptop entstehen es jedes mal, wenn ich einen Wert ändere, ca. eine Minute lang bei jedem Click (selbst wenn ich nur im Menü etwas anklicke oder mit Pfeiltasten die Zellen wechsele) Wartezeiten von etwa einer Sekunde. So kann man zwar noch arbeiten, aber es nervt sehr, vor allem, weil ich es täglich mehrfach verwende. 

Es liegt nicht an Excel allgemein, sondern an der Datei. Das Problem verschwindet, wenn ich den Berechnungsmodus auf manuell umstelle, aber das ist für mich auch unpraktisch. Was ich bisher versucht habe: 

  • Dieses Tutorial, was auch meine Dateigröße von ca. 10 auf 4 MB reduziert hat: https://www.reddit.com/r/excel/comments/...ize/?tl=de
  • PC/Excel neustarten
  • Makros deaktivieren
  • Überflüssige bedingte Formatierungen etc. löschen
  • Weitere Recherche hat gezeigt, dass es wohl "volatile Funktionen" gibt. Ich habe die Datei nach einigen davon durchsucht, aber nur wenige gefunden, bei denen ich auch nicht wüsste, wie ich sie ersetzen könnte.
  • Das Inquire-Add-In genutzt, um die Formeln genauer zu analysieren (Ergebnisse s.u.). Die angezeigten Formelfehler dort habe ich überprüft, das scheint für mich aber alles nur an Fällen zu liegen, wo durch 0 geteilt wird, weil ich irgendwas noch nicht ausgefüllt habe. Das könnte man natürlich mit einer Exception abfangen, habe ich aber nicht immer gemacht, dürfte auch denke ich nicht das Problem sein.

Ich habe sicherlich einiges suboptimal gelöst, weil ich kein Excel-Experte bin. Ich "wurschtel mich durch", aber ich habe keine tieferen Kenntnisse. Von daher gibt es für mich drei Möglichkeiten: 
a) Bei der Komplexität der Datei ist es nunmal einfach so, dass mein Laptop nicht hinterher kommt
b) Meine schlecht optimierten Formeln sind daran schuld und man könnte das verbessern (wie?!)
c) Es ist etwas ganz anderes, an das ich nicht denke.

Hat jemand von euch eine Idee für mich? Ich habe die Inquire-Auswertung angefügt, da könnt ihr alle enthaltenen Formeln sehen, falls jemand einen Blick auf meine Schande werfen will  19 Ich weiß wohl, dass es viele Formeln sind und auch manche recht komplex, aber 95% der Formeln müssten eigentlich jeweils unbeeinflusst bleiben, egal in welcher einzelnen Zelle ich etwas ändere.

Liebe Grüße

MartinaS


Angehängte Dateien
.xlsx   Vorlage 2024 Arbeitsmappenanalyse.xlsx (Größe: 769,21 KB / Downloads: 9)
Antworten Top
#2
Hallo Martina,

wer soll dir dabei helfen? Zwar sehe ich viele Formeln, aber keine Liste(n), wo die angewendet werden. Zeige doch bitte eine Datei, wo man das nachvollziehen kann. Wobei: eine Sekunde Wartezeitfinde ich nun nicht so schlimm. In meiner Anfangszeit mit dem Commodore Plus4, war ich froh, eine Funktion gefunden zu haben, die in der Lage war, zweihundert Datensätze in drei Minuten zu sortieren.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top
#3
Hallo,
danke für deine Antwort! Die Datei hilft mir bei der Bewertung meiner Schüler. Ich muss also nach jeder Stunde in den fünf Minuten, die ich habe, bis die nächste Klasse kommt, schnell ca. 25 Werte (Noten) eintragen, wenn dann jeder Wert und obendrein jeder Klick usw. immer eine Sekunde kostet ist das schon kostbare Zeit für mich, aber ich verstehe natürlich, was du meinst.

Ich kann natürlich keine ausgefüllte Datei anhängen, aber ich lade mal meine Vorlage hoch. Wenn du sie ausprobieren willst, musst du nur unter "Schüleranzahl" mal etwas wie 20 Eingeben bei aktivierem Makro, dann werden alle Tabellen einmal passend erstellt. Ist mir etwas peinlich, aus der Perspektive eines Excel-Profis ist da vieles sicherlich sehr Laienhaft gelöst, aber das Ergebnis hilft mir im Alltag sehr! Smile

Wie kann ich denn die Datei teilen? Als Attachment ist 2MB das maximum, ich bräuchte knapp unter 5.

Liebe Grüße und danke  Heart  !
Antworten Top
#4
Hallo Martina,

du kannst da eine Beispieldatei mit wenigen Zeilen draus machen, dann sollte man schon was erkennen.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top
#5
Hallo

Mein Tipp:
Bei deiner Excelversion schmeiße alle Formeln raus und nutze Power Query.
Viele Grüße
PIVPQ
Antworten Top
#6
@Klaus-Dieter: Ich habe jetzt mal einige Blätter gelöscht, neben K1 (Klassenarbeit 1) gibt es eigentlich weitere und dasselbe bei Q1 (Quartal 1), die Blätter sind aber prinzipiell identisch. So ist es klein genug. Smile

@PIVPQ: Den Begriff höre ich von dir zum ersten Mal. Es kann zwar gut sein, dass du recht hast, aber wenn ich mich nicht irre (habe gerade mal kurz recherchiert um zu schauen, was das etwa ist), würde das viele Stunden Arbeit bedeuten, um alles umzubauen, oder? Wenn das der einzige Weg ist, nehme ich lieber die Wartezeit in Kauf, das war so schon alles sehr viel Aufwand für mich als Laien, ich will nicht alles nochmal in einer anderen "Sprache" nochmal machen.


Angehängte Dateien
.xlsm   Vorlage 2024 4 KL - Kopie.xlsm (Größe: 490,6 KB / Downloads: 9)
Antworten Top
#7
Hallo Martina,

das ist ein Stück Arbeit, das alles zu analysieren. Auf dem Blatt "K1" gibt es oben zum Beispiel eine Intelligente Tabelle mit vorausgefüllten Zeilen. Das ist Quatsch, weil so eine Tabelle für jeden neuen Eintrag automatisch eine neue Zeile mit allen Formeln anlegt. Überhaupt scheint mir der Aufbau der Seiten wenig, bzw. keine, Struktur zu haben. Das ist schlecht.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top
#8
Moin MartinaS

Ich kann mich den Vorrednern nur anschließen.

Schlechtes Modell
Verwendung von Matrixformeln: SUMME(WENN()). Dafür gibt es SUMMEWENN() bzw. SUMMEWENNS().
Verwendung von INDIREKT().

Ändere dein Modell nach dem EVA-Prinzip. Auswertung mit Pivot oder PQ.

Vielleicht hilft es schon alle Grafiken, Diagramme und bedingten Formatierungen zu löschen.
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Antworten Top
#9
Moin,

das ist ja mal ein schönes Chaos... 33
Wer soll sich denn da durchwursteln? Da blickt doch keiner durch. Jedenfalls nicht, ohne viel Zeit verplempern zu müssen. Am besten, Du erklärst mal Schritt für Schritt, was Du eigentlich vorhast. Was, wann, warum und wie passieren soll...
Hab nur mal einen kurzen Blick darauf geworfen, was mir aufgefallen ist, Du stößt in den Tabellenmodulen jede Menge Ereignisse an, in denen keine einzige Zeile Code steht. Auch wenn da kein Code steht, werden sie völlig unnötigerweise aufgerufen. Auch das kostet Zeit. Lösch die alle mal, das sollte zumindest einen kleinen Zeitgewinn bringen.

Und wenn Du keine Lust hast, ein paar notwendige Beispieldatensätze (z. Bsp. in der Klassenliste) bereitzustellen, ich hab auch keine... Fehler durch unvollständige Daten darfst Du selbst beheben....
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben.
Nur, weil ich den Recorder bedienen kann, macht mich das noch lange nicht zum Musiker.

Ciao, Ralf

Antworten Top
#10
Hallo Martina

Aus der Analyse geht hervor, das du die Funktion Offset bzw Bereich.Verschieben verwendest, um einen Zellbezug zu berechnen.

Diese Funktion hat die Eigenschaft, dass sie volatil ist, was bedeutet, dass eine Formel mit dieser Funktion bei jeder Änderung in Excel neu berechnet wird und damit auch alle Formeln, die sich auf diese beziehen.
Eine nicht-volatile Formel wird nur dann neu berechnet, wenn es erforderlich ist, dh wenn sich eine Zelle, die die Formel verwendet, ändert.

Das Bereich.Verschieben führt dazu dass dein ganzes Formelwerk immer komplett neu durchgerechnet wird, sobald du irgendwo was eingibst, oder filterst, oder sortierst.

Solange man nur die Zeilen oder Spalten des Bezugs berechnet, kannst du das Bereich.Verschieben immer durch die Funktion INDEX ersetzen.
Die Berechnung muss dann etwas anders gemacht werden, aber es geht und Index ist nicht volatil, 


Beispiel:
=SUMME(I37:BEREICH.VERSCHIEBEN(I37;0;D73-1))
Wird zu
=SUMME(I37:Index(I:I;1;Spalte(I37)+D73-1))




Also ersetzen alle Bereiche.Verschieben durch Index, das sollte schon viel bringen, ohne das du deine Datei selbst neu aufbauen musst

Gruß Daniel

(21.08.2025, 17:58)PIVPQ schrieb: Hallo

Mein Tipp:
Bei deiner Excelversion schmeiße alle Formeln raus und nutze Power Query.

Kann man I'm das immer und bei jeder Aufgabenstellung so einfach machen?
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste