Bedingte Formatierung problematisch

Moin zusammen,

eher eine allgemeine Frage/Feststellung.

Habe eine Datei aus Excel 2003 mit einigen bedingten Formatierungen

(ca. 35 Zeilen*250 Spalten)

Da ja Excel 2010 deutlich mehr spalten (natürlich auch Zeilen) kann, habe ich um noch etwas mehr Historie zu haben noch ein paar Spalten drangehängt. Allerdings schon beim kopieren der Formate hängt sich Excel gerne mal auf bzw braucht sehr lange um z.B. 5 Spalten a 32 Zeilen, also ca 150 mal bedingte Formatierung zu kopieren.

Hat Excel ein Problem, wenn es zuviele Zellen mit bedingter Formatierung werden?

Gruß

slam

Habe eine Datei aus Excel 2003 mit einigen bedingten
Formatierungen
(ca. 35 Zeilen*250 Spalten)

(…) Excel 2010 (…) noch ein
paar Spalten drangehängt.
(…)
Hat Excel ein Problem, wenn es zuviele Zellen mit bedingter
Formatierung werden?

Hallo,

ich denke, Excel braucht natürlich länger, wenn mehr Berechnungen oder Vergleiche und Formatierungen vorgenommen werden müssen. Aber Abstürze kann ich nicht so recht nachvollziehen.

Versuche mal, die Excel-2003-Datei vor(!) der Anpassung im neuen Dateiformat (xlsx) zu speichern und anschließend einmal zu schließen/beenden, damit Excel wirklich sauber den Kompatibilitätsmodus verlässt. Wenn du dann Excel neu startest und die Datei wieder öffnest, tritt der Fehler vielleicht nicht mehr auf.

Falls das nichts hilft und in der Arbeitsmappe nicht zu viele Tabellen kreuz und quer mit Formeln verknüpft sind, würde ich die Excel-2003-Datei öffnen und gleichzeitig eine neue Excel-2007/2010-Datei starten. Dann kannst du in der alten Datei alles markieren (Strg+A), kopieren (Strg+C) und dann in der neuen Datei an Position A1 wieder einfügen (Strg+V).

Mit dieser Vorgehensweise werden u.U. die schlecht funktionierenden Relikte der alten Version verworfen.

Viel Erfolg.
Anja

Grüezi slam

Da ja Excel 2010 deutlich mehr spalten (natürlich auch Zeilen)
kann, habe ich um noch etwas mehr Historie zu haben noch ein
paar Spalten drangehängt. Allerdings schon beim kopieren der
Formate hängt sich Excel gerne mal auf bzw braucht sehr lange
um z.B. 5 Spalten a 32 Zeilen, also ca 150 mal bedingte
Formatierung zu kopieren.

Hat Excel ein Problem, wenn es zuviele Zellen mit bedingter
Formatierung werden?

Das hängt auch stark von den Formeln der Bedingten Formatierung ab.

Statt die Zellen zu kopieren könntest Du ev. auch einfach den Bereich in dem die Bedingte Formatierung wirksam ist entsprechend vergrössern.

Ohne die Mappe und/oder die Formeln zu sehen ist es aber schwierig, genauere Hinweise zu geben, fürchte ich…

Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

Moin,
ich würde ungern die ganze Mappe schicken.

Nur noch mal ein paar Rahmendaten bzw ich könnte das Blatt mit den bedingten Formatierungen hochladen. Denn auch wenn ich das als einzelnes Blatt mache habe ich die Probleme.

Die Datei hat historische Daten ca. 1700 Zeilen und ca. 100 Spalten. Allerdings immer nur von einer Historischen Zahlenreihe (Spalte)
Aus diesen werden bestimmte Kennzahlen berechnet, per VBA-Modul auf Knopfdruck. Anschließend werden die Daten in eine Tabelle kopiert mit der bedingten Formatierung. Gleichzeitig stehen eine Gnaze Reihe Grafiken zur verfügung für einzelne Kennzahlen, die je nach Lust und Laune bis 2 Jahre zurück die Kurven darstellen. Allerdings läuft alles nur auf Knopfdruck wenn gewünscht. Die Tabellen/Grafiken werden erst dann aktualisiert.
auch wenn ich z.B. in einem Tabellenblatt mal ein paar Zeilen lösche, ohne Inhalt, dann dauert dies schon mal 30 sekunden.

Die hochgeladene Mappe ist jetzt vereinfacht, nur die Auswerteseite mit den bedingten Formatierungen. Wenn man jetzt versucht die letzten 20 Spalten zu markieren (bis Spalte 130, die Zeilen 6 bis 38) und zu kompien und ab Spalte 131/Zeile 6 versucht Inhalte/Formate einzufügen, dann dauert dies lange bzw Excel hängt sich auf.

Zur Zeit ist noch ein Bezug für den Zellenwert drin auf ein anderes Tabellenblatt, normalerweise werde die Zellen durch eine VBA-routine mit werten gefüllt.

http://www.file-upload.net/download-4342521/Mappe.xl…

Gruß

slam

http://www.file-upload.net/download-4342521/Mappe.xl…

Hallo Slam,
stell mal die Berechnung auf manuell.

Dieser Code kopiert nur Zellen aus einer Spalte, da sieht man schon die Zeitdifferenz.

Sub tt()
Dim T As Single
T = Timer
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Application.Calculation = xlCalculationManual
Range("DH6:smiley:H38").Copy Range("DB6")
MsgBox Timer - T
T = Timer
Application.Calculation = xlCalculationAutomatic
Range("DH6:smiley:H38").Copy Range("DB6")
MsgBox Timer - T
'MsgBox ActiveSheet.UsedRange.SpecialCells(xlCellTypeFormulas).Count
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub

Gruß
Reinhard

Moin Reinhard,

man braucht nochnicht mal die Zeiterfassung, auch wenn man 10 Spalten mit automatischer Berechnung bzw manuelle Berechung kopiert ist die manuelle deutlichst schneller.

Aber gibt es dafür einen Grund? Denn wie schon vorher erwähnt, wenn ich auf einem anderen Datenblatt mal ne Zeile lösche ohne Inhalt, dauert dies auch ewig und hat ja nichts mit dem kopieren der Formate der Zellen zu tun. Oder ist die automatische Berechnung in diesem Fall ein Speicherschlucker auch wenn es im Moment eigentlich ncihts zu berechnen gibt?

Gruß

slam

Grüezi slam

man braucht nochnicht mal die Zeiterfassung, auch wenn man 10
Spalten mit automatischer Berechnung bzw manuelle Berechung
kopiert ist die manuelle deutlichst schneller.

Aber gibt es dafür einen Grund? Denn wie schon vorher erwähnt,
wenn ich auf einem anderen Datenblatt mal ne Zeile lösche ohne
Inhalt, dauert dies auch ewig und hat ja nichts mit dem
kopieren der Formate der Zellen zu tun. Oder ist die
automatische Berechnung in diesem Fall ein Speicherschlucker
auch wenn es im Moment eigentlich ncihts zu berechnen gibt?

Wenn die Bedingte Formatierung gesetzt ist, dann gibt es immer etwas zu berechnen.
Die Bedingte Formatierung ist volatil, sprich sie wird auch ohne äusseren Anlass wie die Veränderung von Werten auf die sich die Formeln beziehen immer dann neu berechnet, wenn sich der sichtbare Bereich des Tabellenblattes verschiebt. Dann nämlich muss Excel entscheiden ob eine Zelle (oder ein Teil davon) im sichtbaren Bereich liegt und somit eingefärbt werden muss oder eben nicht.

Schaltest Du daher die automatische Berechnung aus, geht das Ganze wesentlich schneller - anschliessend kannst Du sie Berechnung dann wieder auf [x]Automatsich setzen.

Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -