Verfügbare Ressourcen erschöpft

Hi,

ich habe eine Excel-Anwendung in VBA programmiert, die mit großen Datenmengen operiert. Dabei werden die Daten über ein Variablen-Feld eingelesen und dann in Tabellenblättern abgespeichert. Nach kurzer Zeit bricht das Programm ab mit der Meldung, die Ressourcen seien erschöpft und ich solle Programme beenden etc.

Wie kann ich den Umgang mit Variablen und mit Tabellenblättern so effizient wie möglich gestalten? Was frisst richtig viel Speicher und was weniger?

Vielen Dank für eure Hilfe.
Martin

Hallo Martin,

möglichkeiten gibt es viele!
Man muesste den Source sehen, wo die Ressourcen verbruzelt werden, dann koennte man dir evtl. den einen oder anderen Tipp geben!
Nur hier wild drauf losraten was es sein kann und wie man was am effektivsten macht, das bringt rein garnichts :s

MfG Alex

ich habe eine Excel-Anwendung in VBA programmiert, die mit
großen Datenmengen operiert. Dabei werden die Daten über ein
Variablen-Feld eingelesen und dann in Tabellenblättern
abgespeichert. Nach kurzer Zeit bricht das Programm ab mit der
Meldung, die Ressourcen seien erschöpft und ich solle
Programme beenden etc.
Wie kann ich den Umgang mit Variablen und mit Tabellenblättern
so effizient wie möglich gestalten? Was frisst richtig viel
Speicher und was weniger?

Hi Martin/Sybille,

in http://www.xlam.ch/ steht sehr viel zu Grenzen von Excel-Vba.

Letztlich steht dort, die Anzahl der Tabellenblätter, Variablen, Variableninhalten sei nur durch den Arbeitsspeicher begrenzt.

Wie Alex schon sagte, poste mal den Code, dann kann man schauen ob man da den Speicherbedarf in der Laufzeit nicht runtersenken kann.

Und zu deiner Frage, was mehr Speicher frisst, variiere mal um Faktor 10 o.ä. die Größe der Variablenfelder und/oder auch die der Blätter, dann müßte man, am Auftauchen der Fehlermeldung schon erkennen können ob die Anzahl/Größe der Variablenfelder oder die der Tabellnblätter für die Fehlermeldung zuständig sind.

Quasi austesten ob der Fehler bei Dim x(10,10,10) kommt oder erst ab Dim x(1000,1000,1000) kommt, oder erst dann wenn sie befüllt werden usw.

Habe ich es überlesen, oder hast du dein Betriebssystem und die Excelversion gar nicht genannt? Wenn ja, tztz, dann weißt du auch nicht was eine Brettbeschreibung ist :frowning: *schelt*, naja, hol’s halt nach.

Gruß
Reinhard