Hallo Winfried,
ich weiß das ich die Makros nicht kommentiere. Aber ich weiß was sie
anstellen.
Die tatsächlichen Zeitfresser? Meine Vermutung liegt beim löschen von
Tabellenblättern. Es ist erschütternd wie lange Openoffice auch ohne
Makro dafür benötigt, um lediglich Tabellenblätter zu vernichten.
In anderen Modulen beobachte ich das gleiche Verhalten. Prozeduren an
sich sind sehr schnell. Werden aber plötzlich große Daten bewegt, und
eine solche Prozedur danach aufgerufen, wird sie derart langsam.
> Bei 3*20*40 Durchläufen in VERTEILUNG() vermisse ich auf den ersten
> Blick die Ausführung im Hintergrund (FRAME->HIDDDEN).
>
Ich habe die Eigenschaft Frame Hidden im Xray gefunden, sie ist dort
allerdings als read only angezeigt. Außerdem hatte ich gehofft mit Lock
controlers und isundoenabled bereits die Zeitfresser abgestellt zu
haben. Die Ausgabe wird jedenfalls nicht mehr aktualisiert.
> Nicht wg. den "geschätzen 10 Min." - sondern um die tatsächlichen
> Zeitfresser zu isolieren.
> Aber seltsam ist die gemachte Beobachtung schon.
ok also ich weiß nicht ob dir die Zeitmessung objektiv genug ist. Ich
habe einfach mal die funktion timer benutzt. und zwar habe ich folgendes
gemacht:
Dim t
t = timer
und vor dem Aufruf von Verteilung in der Prozedur filtern:
t = timer -t
msgbox t
in der Prozedur Verteilung habe ich gleiches auch gemacht.
zu nächst habe ich den Aufruf von Verteilung auskommentiert.
und die Prozedur manuell gestartet. Im frisch geöffneten Dokument zeigt
mir die MSGbox 3 ich nehme an Sekunden.
nach einem Durchlauf von Filtern ohne Verteilung und Dia erhalte ich 19.
Ein erneuter Durchlauf von Verteilung benötigt bereits 11 Sekunden.
Und Filtern braucht beim zweiten Versuch 27 Sekunden.
Starte ich Filtern jetzt mit dem Aufruf von Verteilung ohne Dia, braucht
Filtern bis zum Aufruf von Verteilung bereits 55
die Funktion Verteilung habe ich dann mit dem Prozess Staroffice.bin im
Taskmanger nach über 14 Minuten abgeschossen.
Die Autoberechnung
kann ich leider nicht abschalten, da sonst die Makros keine
Rückgabewerte bekommen. Vielleicht kann ich es zeitweise
deaktivieren.
??
Die Autoberechnung dient IMHO der Aktualisierung der Anzeige ... ein
Makro sollte sich bei einer Berechnung den akt. (Zell-)Wert holen.
das Makro Verteilung hat die Aufgabe 3 Werte in der Tabelle zu ändern.
Dies sind die drei Parameter eine Weibulverteilung. Daraus berechnet das
Tabellenblatt dann die Verteilung in den einzelnen Klassen. Aus den
theoretischen Häufigkeiten und den absoluten wird dann die quadratische
Abweichung je Klasse berechnet und diese dann wiederum summiert. Das
Ergebnis des ganzen holt das Makro und vergleicht es mit dem minimalen
Ergebnis der vorangegangenen Rechenschritte.
Stelle ich die Autoberechnung also ab, erhalte ich kein Ergebnis. Dann
kann ich mir die ganze Sache also sparen.
Also die Datei ist inzwischen 1,4 MB groß. Dies ist aber den 4 Digrammen
je Auswertungsblatt geschuldet, ohne dieses wäre die Datei nur die Hälfte.
Viele Grüße
Jan
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@de.openoffice.org
For additional commands, e-mail: users-h...@de.openoffice.org