Hallo Bydo,
du willst ca.
-66.000 Zellen einzeln aus der Prüfliste und mehr als 2 Milliarden Zellen einzeln aus dem Inventar lesen und 154.000 Zellen einzeln in die Ausgabe schreiben.
Eine Geschwindigkeitsverbesserung vom Faktor > 10.000 dürfte hierbei kein Problem sein.
1) Wenn du die Eingangsarrays wie Fennek beschrieben hat mit je einem Befehl einliest und das Ausgangsarray mit einem Befehl ausgibst, sollte ein Verbesserungsfaktor > 100 möglich sein.
2) Wenn du zusätzlich nicht bei jeder Prüfliste immer das gesamte Inventar durchliest sollte zusätzlich ebenfalls ein Verbesserungsfaktor > 100 möglich sein.
Da die vier Vergleichsspalten in nur zwei Listen sind, wird die Nutzung von Dictionaries, wie Fennek vorgeschlagen hat, in diesem Fall wohl schneller als eine Sortierung der Spalten sein.
du willst ca.
-66.000 Zellen einzeln aus der Prüfliste und mehr als 2 Milliarden Zellen einzeln aus dem Inventar lesen und 154.000 Zellen einzeln in die Ausgabe schreiben.
Eine Geschwindigkeitsverbesserung vom Faktor > 10.000 dürfte hierbei kein Problem sein.
1) Wenn du die Eingangsarrays wie Fennek beschrieben hat mit je einem Befehl einliest und das Ausgangsarray mit einem Befehl ausgibst, sollte ein Verbesserungsfaktor > 100 möglich sein.
2) Wenn du zusätzlich nicht bei jeder Prüfliste immer das gesamte Inventar durchliest sollte zusätzlich ebenfalls ein Verbesserungsfaktor > 100 möglich sein.
Da die vier Vergleichsspalten in nur zwei Listen sind, wird die Nutzung von Dictionaries, wie Fennek vorgeschlagen hat, in diesem Fall wohl schneller als eine Sortierung der Spalten sein.
helmut
Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.
Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.