Excel ist langsam
11.06.2004 20:48:13
Michael
zur Ausgabe von Angeboten aus einer Access-Datenbank verwende ich seit einiger Zeit Excel-Worksheets. Dabei muss ich sehr häufig die .Merge- und .Autofit-Methoden des Range-Objektes verwenden und lege darüberhinaus noch die .Styles-Eigenschaft fest. Dies hat leider zur Folge, dass der Export größerer Textmengen sehr lange dauert (5-7 Minuten für 8 Excel-DinA4-Seiten !!!).
Ich konnte in meinem Code gezielt nachmessen, dass diese Excel-Funktionen ca. 80% der gesamten Laufzeit benötigen, da ich sie auf Grund von verbundenen Zellen
(dabei musste ich auf eine hier gefundene AutoFit-Methode zurückgreifen, die bis auf die Performance wunderbar funktioniert, da Excel kein direktes AutoFit für die Höhe verbundener Zellen ermöglicht)
und ca. 12-15 verschiedener Range-Styles sehr häufig verwenden muss, und auch jede (nicht leere) Excel-Zelle einzeln beschreiben und formatieren muss.
Das Screenupdating habe ich bereits (mit gutem Ergebnis) abgeschaltet.
Gibt es vielleicht eine grundlegende Möglichkeit (API-Funktionen wie beim VB-Listview-Control oder irgendwelche Einstellungen von Excel, kopieren der (Access-)Texte über das Clipboard in ein Range-Objekt, DDE oder ähnliches, oder vielleicht was ganz anderes ...), die angegebenen Formatierungsfunktionen von Excel mit gleichem Ergebnis zu umgehen oder sie zu beschleunigen ???
Viele Grüße,
Michael, der derweil sich einen Kaffee holt, und auf den nächsten Export wartet ;-)) ...