Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Performance-Beobachtung
#1
Ich habe gerade ein altes Netbook (Asus eeePC 900 N270 Single-Core 1,6 GHz) mit Win-XP optimiert und Office 2000 aufgespielt.

Den Code in http://xxcl.de/0052.htm (unten) habe ich dort laufen lassen:

a) beim ersten Durchlauf in leerer Datei benötigt er 5,5 Sekunden
b) beim zweiten Durchlauf 1,4 Sekunden

Nun habe ich die entstandene, mit den künstlichen Daten mit 3470 KB recht große Datei, gespeichert und Excel verlassen. Nach Wiederöffnen ließ ich den Code nochmals durchlaufen

c) mit nur noch 0,7 Sekunden Laufzeit!

(Anmerkung: In Versionen ab xl2007 braucht der Code vermutlich länger, da ich Ganzspaltenzuweisungen drin habe).

Im Code wird ein großer Bereich einem großen Variant zugewiesen, in einem neuen Variant bearbeitet, und dieses dann zurückgeschrieben. Die Zuweisungen "Zelle->Variant und zurück" sind INNERHALB der Zeitmessung, könnten also die entscheidende Rolle für eine Antwort zur folgenden Frage sein:

Worin liegen Eurer Meinung nach die Fortschritte in b) und in c)?
[-] Folgende(r) 1 Nutzer sagt Danke an lupo1 für diesen Beitrag:
  • Fennek
Antworten Top
#2
Hallo lupo
Dein Beitrag ist höchst interessant .... aber ohne Echo. Könnte dies sein, weil er für eine höhere Liga passen würde? Hier, wo wir uns tummeln, ist Excel / VBA ein Werkzeug. Es ist uns eigentlich und in der Regel egal, ob ein Prozess 0.5 oder 5 sec dauert. Wir kämpfen mit der Oberfläche, was darunter abläuft ist unwichtig solange die Resultate stimmen. Unsere Probleme auf der Oberfläche abzubilden, beschäftigt uns oft nicht Sekunden und Minuten sondern Stunden. So gesehen, muss Dich die Nullreaktion nicht entmutigen!
Ein unqualifizierter Versuch einer Erklärung zu Deinen Beobachtungen b) / c): Könnte es sein, dass Excel/VBA eine Analyse macht, feststellt, dass nichts geändert wurde und daher schneller reagiert? Selber brauche ich allerdings nicht zu wissen was Excel/VBA unter der Oberfläche so anstellt.
Gruss
Antworten Top
#3
Neues Workbook:

1.  1,5
2. 1,625
3.  1,625

Gespeichert als .xlsb
Wieder geöffnet
1. 1,57
2. 1,56

Gespeichert als .xls
Wieder geöffnet

1.   0,38
2.   0,31

Wenn man in der .xlsb Datei die Rgagne beschränkt bis cells(1).currentregion:
1. 0,38
2. 0,32

Es scheint als ob Rabge("A:B") der 'culprit' ist.
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top
#4
Hallöchen,

unter 2016 sehe ich nur minimale Unterschiede, aber wie bei snb's erstem Beispiel in die entgegengesetzte Richtung.
Ich habe erst den ersten Code laufen lassen.

Anschließend hat der zweite Code 2,07 gedauert. Beim zweiten und dritten Durchlauf des zweiten codes waren es 2,34 und 2,25, also etwas länger.
Nach Speichern und erneutem Öffnen wieder 2,07 und dann 2x 2,20
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


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