Registriert seit: 01.02.2016
Version(en): 2010
Hallo Leute,
es ist genauso wie Uwe sagt (und auch meinen Thread von gestern zitiert, eine verbesserte Version meines Codes dank der Hilfe von Uwe werde hier ich noch veröffentlichen) , die Geschwindigkeit
und damit auch Leistungsfähigkeit von den Feldvariablen ist unübertroffen. Habs gerade nochmal ausprobiert und dies sieht man schon augenscheinlich. Werde ich aber mit GetTickCount
auch nochmal nachmessen. Insofern keine akademische Diskussion. Die Methoden insert Shift etc. kenne ich und die sind mir zu langsam.
Ich hoffe wir finden hier eine Lösung.Das wäre wirklich schön. Ansonsten mein Code funktioniert ja feldbasiert. Leider nicht so elegant wie ich ihn gerne hätte.
Aber allen schon mal Danke für ihr Interesse.
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
Hi mal wieder!
Zitat:Werde ich aber mit GetTickCount auch nochmal nachmessen.
Jo, mach mal, interessiert mich auch.
Schon klar, dass Arrays dadurch, dass sie in den Arbeitsspeicher geladen werden, erheblich schneller sind.
Ich werde jetzt mal meinen Arbeitsspeicher mit 1.000.000 Zellen à 500 Zeichen belasten und melde, wie lange das Einfügen einer Zelle dauert.
Hab's gemacht, warte aber erst auf Dein Ergebnis. :21:
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 01.02.2016
Version(en): 2010
Auch wenn ich (leider) kein Excel-VBA Guru bin, aber soviel zum Thema der Verarbeitung großer Datenmengen:
http://www.informatik-aktuell.de/betrieb...beiten.htm
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
Hi Algor!
Zitat:Die von Ihnen gewählte Adresse/URL ist auf unserem Server nicht bzw. nicht mehr vorhanden.
Du musst mir nichts über die Vorteile von Arrays erzählen.
Mich würde eher interessieren, wie man
einen Befehl beschleunigt.
Hieße ja, dass die Programmierer von MS ihre Hausaufgaben schlicht nicht gemacht haben.
Wohlgemerkt: mir geht es nicht um sinnlose Schleifen!
Ich erwarte Deine GetTickCounts …
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 25.09.2014
Version(en): 2010-2013
08.02.2016, 19:08
(Dieser Beitrag wurde zuletzt bearbeitet: 08.02.2016, 19:08 von Wulfi.)
Hallöchen,
1. also bei mir funktioniert der Link und
2. auch wenn's nur Kosmetik ist
vielleicht folgende Codeänderung
Code:
Cells(ActiveCell.Row, Spalte).ClearContents
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
08.02.2016, 19:59
(Dieser Beitrag wurde zuletzt bearbeitet: 08.02.2016, 19:59 von WillWissen.)
Hi Wulfi,
wie bei dir der Link einwandfrei funktionieren soll, ist mir ein Rätsel :32:
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo Günter,
was soll das jetzt darstellen bzw. welchen Sinn ergibt das?
Vielleicht meint Wulfi ja auch meinen Link?
Gruß Uwe
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hi Uwe,
in Beitrag #13 schrieb Algor
Zitat:Auch wenn ich (leider) kein Excel-VBA Guru bin, aber soviel zum Thema der Verarbeitung großer Datenmengen:
http://www.informatik-aktuell.de/betrieb...beiten.htm
Das war dann Ralfs (RPP63) Antwort:
Zitat:Hi Algor!
Zitat: schrieb:Die von Ihnen gewählte Adresse/URL ist auf unserem Server nicht bzw. nicht mehr vorhanden.
Wulfi antwortete ihm im Beitrag #15
Zitat:Hallöchen,
1. also bei mir funktioniert der Link und
Und daraufhin habe ich den Link ausprobiert und ebenfalls den Fehler wie Ralf festgestellt. Und jetzt verstehe ich deinen Einwand nicht.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
@TheMost:
Abseits von OT-Diskussionen:
Es steht immer noch die Frage im Raum, inwiefern ein simples .Insert xlShiftDown ausgehend von einer Zelle langsamer sein soll als das Ganze über Felder (Arrays) abzuwickeln.
Meine GetTickCounts (old fashioned aka Timer()) melden mir etwas anderes.
Wohlgemerkt: Mag sein, dass ich mich irre, aber meine 500 Megabyte sprechen eine andere Sprache (und ja, ich werde die Datei hier nicht hochladen).
Peace, :100:
Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 16.08.2014
Version(en): 2013
Hi,vielleicht kann ich weiterhelfen mit dem Link:[
Dateiupload bitte im Forum! So geht es: Klick mich!Auch zu suchen und zu finden über Google:
Bernd Held 22. August 2014 Die Flucht in den Arbeitsspeicher - Massendaten in VBA blitzschnell verarbeiten
[/b]