Alexander Bierig
2005-04-07 19:01:03 UTC
Tag,
wir haben das Problem, dass wir zuverlässig wissen sollten, ob in
Exceltabellen identische Rechenergebnisse stehen.
Die Dateien haben denselben Aufbau, unterscheiden sich lediglich über ein im
Dateinamen mitgeführtes Datum, sowie aus dem Dateinamen erkennbaren
Themeninhalt.
In den einzelnen Mappen können durchaus 150 Tabellen mit bis zu 50.000
Zeilen auftreten.
Daher war die Idee, die Prüfung mittels Sverweis und Makro durchzuführen und
den Computer nächtelang selbst rechnen zu lassen.
Makro greift geöffnete(!) Mappen auf, schreibt deren Namen und den Partner
in ein Array.
dann wird das Array abgeklappert udn die Tabellen innerhalb der Mappen
werden jeweils mit ihren Namen in ein Array geschrieben.
Anschliessend werden dei Tabellen abgeklappert udn mittels SVERWEIS die
Werte der einen Tabelle in eine Spalte der Partnertabelle geschrieben, die
Differenz gebildet, die bei identischen Werten 0 ergeben muss.
Abschliessend klappern wir die Spalten in den 0 stehen muss je Tabelle ab
und vermeken (ebenfalls in einem Array) die abweichenden Tabellen/Mappenname
ind die Zeile der Abweichung. (um nach der Ursache zu forschen)
leeren das Array mit den Tabellennamen
wechseln zu nächsten Mappe...
bsp:
mappea_heute.xls mappea_gestern.xls
mappeabc_heute.xls mappeabc_gestern.xls
usw...
jede der Mappen ist innerlich mit derselben Tabellenzahl - und struktur (und
sogar den identischen Tabellennamen) unterwegs.
Dem Gedanken, die ganzen Mappen (zweimal 37 Mappen) in einem Rutsch zu
öffnen, liegt die Faulheit dahingehend zugrunde, dass man dann keine
Dateiverwaltung zusätzlich im Makro erstellen muss.
Das Problem ist eigentlich, dass wir den dahinterliegenden SQL-Server in
seinen Berechnungen umstellten/erweiterten und absolut sicher sein müssen,
dass wir in den angesprochenen 37 Bereichen keine Veränderung haben.
Makro läuft fehlerfrei und wunschgemäss.
ABER:
manche Mappen haben über 100MByte.
Und wenn ich z.Bsp 8 Mappen mit insgesamt 280 MByte aufmachen will, fällt
das Excel mit "nicht genügend Arbeitsspeicher" auf die Nase.
Wenn ich die Menge Mappen aufmache, die das Excel gerade ncoh zulässt,
fällts anschliessend bei seinen Berechnungen auf die Nase. Es muss also
"Luft" bleiben.
Das Excel aktualisiert dann nicht einmal mehr den Bildschirm.
Es sind keine Grafiken in den Mappen - nur Tabellen mit Zahlen und Texten
Also musste ich leider doch in Etappen vorgehen - es bleibt aber die
Neugierde:
Wo liegt da eine Grenze bei Excel 2K / XP was den Speicherbedarf angeht?
Genauer: Was ist die Resource, die dem Excel dabei ausgeht? Weil der
Speicher ist es nicht (bei 1,5 GiG RAM und beobachtbaren Verbrauch lt
Taskmanager).
Mit freundlichen Grüssen
Alex.
wir haben das Problem, dass wir zuverlässig wissen sollten, ob in
Exceltabellen identische Rechenergebnisse stehen.
Die Dateien haben denselben Aufbau, unterscheiden sich lediglich über ein im
Dateinamen mitgeführtes Datum, sowie aus dem Dateinamen erkennbaren
Themeninhalt.
In den einzelnen Mappen können durchaus 150 Tabellen mit bis zu 50.000
Zeilen auftreten.
Daher war die Idee, die Prüfung mittels Sverweis und Makro durchzuführen und
den Computer nächtelang selbst rechnen zu lassen.
Makro greift geöffnete(!) Mappen auf, schreibt deren Namen und den Partner
in ein Array.
dann wird das Array abgeklappert udn die Tabellen innerhalb der Mappen
werden jeweils mit ihren Namen in ein Array geschrieben.
Anschliessend werden dei Tabellen abgeklappert udn mittels SVERWEIS die
Werte der einen Tabelle in eine Spalte der Partnertabelle geschrieben, die
Differenz gebildet, die bei identischen Werten 0 ergeben muss.
Abschliessend klappern wir die Spalten in den 0 stehen muss je Tabelle ab
und vermeken (ebenfalls in einem Array) die abweichenden Tabellen/Mappenname
ind die Zeile der Abweichung. (um nach der Ursache zu forschen)
leeren das Array mit den Tabellennamen
wechseln zu nächsten Mappe...
bsp:
mappea_heute.xls mappea_gestern.xls
mappeabc_heute.xls mappeabc_gestern.xls
usw...
jede der Mappen ist innerlich mit derselben Tabellenzahl - und struktur (und
sogar den identischen Tabellennamen) unterwegs.
Dem Gedanken, die ganzen Mappen (zweimal 37 Mappen) in einem Rutsch zu
öffnen, liegt die Faulheit dahingehend zugrunde, dass man dann keine
Dateiverwaltung zusätzlich im Makro erstellen muss.
Das Problem ist eigentlich, dass wir den dahinterliegenden SQL-Server in
seinen Berechnungen umstellten/erweiterten und absolut sicher sein müssen,
dass wir in den angesprochenen 37 Bereichen keine Veränderung haben.
Makro läuft fehlerfrei und wunschgemäss.
ABER:
manche Mappen haben über 100MByte.
Und wenn ich z.Bsp 8 Mappen mit insgesamt 280 MByte aufmachen will, fällt
das Excel mit "nicht genügend Arbeitsspeicher" auf die Nase.
Wenn ich die Menge Mappen aufmache, die das Excel gerade ncoh zulässt,
fällts anschliessend bei seinen Berechnungen auf die Nase. Es muss also
"Luft" bleiben.
Das Excel aktualisiert dann nicht einmal mehr den Bildschirm.
Es sind keine Grafiken in den Mappen - nur Tabellen mit Zahlen und Texten
Also musste ich leider doch in Etappen vorgehen - es bleibt aber die
Neugierde:
Wo liegt da eine Grenze bei Excel 2K / XP was den Speicherbedarf angeht?
Genauer: Was ist die Resource, die dem Excel dabei ausgeht? Weil der
Speicher ist es nicht (bei 1,5 GiG RAM und beobachtbaren Verbrauch lt
Taskmanager).
Mit freundlichen Grüssen
Alex.
--
Wegen der Berge von Spam:
die Emailadresse lautet
alexander.at.taxi.minus.stuttgart.dot.de
Wegen der Berge von Spam:
die Emailadresse lautet
alexander.at.taxi.minus.stuttgart.dot.de