Thema Datum  Von Nutzer Rating
Antwort
18.07.2013 15:22:37 Thomas
NotSolved
18.07.2013 15:37:32 Gast46313
NotSolved
18.07.2013 15:46:04 Thomas
NotSolved
Blau Range.Find() Performance - Datenstrukturen
18.07.2013 16:02:08 Gast81573
*****
NotSolved
18.07.2013 16:16:59 Thomas
NotSolved
18.07.2013 16:28:05 Gast44107
NotSolved
18.07.2013 21:07:11 Thomas
NotSolved
18.07.2013 22:42:15 Gast52866
NotSolved
19.07.2013 11:59:41 Thomas
Solved

Ansicht des Beitrags:
Von:
Gast81573
Datum:
18.07.2013 16:02:08
Views:
812
Rating: Antwort:
  Ja
Thema:
Range.Find() Performance - Datenstrukturen

Was du mal noch überpürfen könntest:

Du schreibst bestimmt auch Daten irgendwohin. Gibt es den Formeln in den betroffenen Arbeitsblättern? Dann könnte es nämlich sein, das jedesmal beim Schreiben alles neu Berechnet wird (Calculate-Event).

 

Ansonsten kann alles mögliche der Fall für lange Laufzeiten sein, z.b. würde ich es auch vermeiden den Datentyp Variant zu verwenden, vorallem im großen Stil.

Mitunter kann es auch schneller sein etwas zu finden, wenn man statt die Find-Methode die Excel-Funktion Match nimmt, oder man sich die Daten als Array geben läßt und darin selber sucht. Das ist aber erst bei sehr großen Datenmengen notwendig (die Rede ist von Datenmengen im 6/7-stelligen Bereich und mehr).

 

Wie schnell etwas in VBA läuft ist vorallem sehr stark davon abhängig, ob man "sauber" programmiert und ich muss immer wieder im Netz verstellen, dass viel schludriger Quelltext im Umlauf ist (z.B. wie du schon erkannt hast, dieses Select/Activate), der schnell mal übernommen wird ohne selber nachzudenken.

Ist halt nun die Frage ob das vielleicht der Fall ist ... hast du das Projekt übernommen/bekommen oder ist es grundauf von dir?


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
18.07.2013 15:22:37 Thomas
NotSolved
18.07.2013 15:37:32 Gast46313
NotSolved
18.07.2013 15:46:04 Thomas
NotSolved
Blau Range.Find() Performance - Datenstrukturen
18.07.2013 16:02:08 Gast81573
*****
NotSolved
18.07.2013 16:16:59 Thomas
NotSolved
18.07.2013 16:28:05 Gast44107
NotSolved
18.07.2013 21:07:11 Thomas
NotSolved
18.07.2013 22:42:15 Gast52866
NotSolved
19.07.2013 11:59:41 Thomas
Solved