Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Performance verbessern

Forumthread: Performance verbessern

Performance verbessern
12.05.2004 11:08:50
KleinKatha
Hallo zusammen,
innerhalb eines Makros führe ich folgende Funktion aus.
z = Worksheets("data").UsedRange.Rows.Count
For i = 2 To z
For Each r In Range(Cells(2, 40), Cells(z, 40))
r.NumberFormat = "0"
If Cells(i, 2) And Cells(i, 3) "00.00.0000" Then
r.FormulaR1C1 = "=RC[-37]-RC[-38]"
r.Value = r.Value
Else
Cells(i, 40) = 0
End If
Next
Next i
Die Funktion soll den Zeitraum zwischen zwei Datums ;o) berechnen. Damit es keine Probleme bei leeren Zellen (00.00.0000) gibt, muss ich meiner Meinung nach mit der Prüfung Cells(i, 2) And Cells(i, 3) "00.00.0000" arbeiten. Im Moment benötigt Excel für die Berechnung von 90 Zeilen ca. 1 Minute. Da stimmt doch irgendwas nicht!?
Kann mir jemand sagen, wie ich die Funktion optimieren kann, damit die Laufzeit nicht so lange ist?
Danke
Katharina
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Performance verbessern
12.05.2004 11:26:37
Marc
Hallo, ich glaube nicht, dass es so funktioniert.
Deine If-Zeile müsste eigentlich lauten:
If Cells(i, 2) "00.00.0000" And Cells(i, 3) "00.00.0000" Then
Ansonsten prüft Excel nur ob in Cells(i,2) überhaupt ein Wert steht.
Ich denke, dass damit auch das Laufzeitproblem behoben ist. Leider kenne ich das ganze Arbeitblatt nicht und kanns nicht ausprobieren.
Marc
Anzeige
AW: Performance verbessern
12.05.2004 11:42:00
KleinKatha
Hallo Marc,
vielen Dank für den Hinweis. Leider ist die Laufzeit dadurch auch nicht schneller geworden.
Ich hänge mal eine Beispieldatei an. (Habe statt mit i zu arbeiten noch Offset eingebaut)
https://www.herber.de/bbs/user/6259.xls
Gruß
Katharina
Anzeige
Performance verbessern?
12.05.2004 11:53:55
Marc
Hallo Katherina,
welches Laufzeitproblem?
Im Ernst, bei mir dauert das keine Sekunde! Und ich würde meinen PC als guten Durchschnitt bezeichnen.
Da Du Excel 2003 hast, kann Dein PC auch nicht sooo alt sein, dass er dermaßen lange dauert.
Woran das liegen könnte, kann ich nur raten.
Der Quelltext ist auf jeden Fall einwandfrei!
Gruß Marc
Anzeige
AW: Performance verbessern?
KleinKatha
Ich hab nochmal nachgeschaut.
Es ist Excel 2002, aber daran kanns ja wohl nicht liegen.
Jetzt weiß ich gar nicht mehr was ich machen soll. Wenns nicht an meinem Code liegt kann ich ja nichts ändern. :o(
Danke trotzdem,
Katharina
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige