Toon posts:

[Vervanger Excel] Bestanden te groot groot geworden voor XL

Pagina: 1
Acties:
  • 111 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Op dit moment is mijn collega bezig met een excelmodel om diverse controles te maken of bepaalde premieonhoudingen overeenkomen met de afdracht van deze premies. Hierin staan enkele tientallen worksheets, met elk enkele tienuizenden rijen en vele tientallen kollomen, in veel elke rij zijn veel cellen met grote formules (een regel of 5). Het bestand is op dit moment 120+Mb en de sheet is niet meer werkbaar. Herrekenen duurt tussen de 5 en 10 minuten. We hebben op diverse machines en divere Excel versies getest, maar het is gewoon te log.
De data in de sheets worden geimporteerd uit CSV textfiles.
Nu ben ik eigenlijk op zoek naar een vervangende omgeving om de problemen te tackelen, zodat er een werkbaar iets uit komt.
Ik heb op Google diverse seach gedaan, maar kom dan vaak uit bij mathematische software, en die voldoen niet aan mijn eisen.
Wat de wensen zijn is eigenlijk als volgt:
Inlezen txt files, en hierop per regel (heel veel en grote) berekeningen uitvoeren, en deze uitkomsten wegschrijven naar een ander bestand.
In mijn ogen is het mogelijk dit te doen in een .NET taal, omdat deze volgens mij standaard ook met xls bestanden overweg kunnen, maar dan is de vraag of ik niet tegen dezelfde problemen aanloop.
Perl zat ik ook aan te denken vanwege de eenvoudigheid om met txt files om te gaan, maar ik weet iegnelijk niet hoe goed deze in staat is berekeningen te doen.
Mijn vraag concreet is dus als volgt:
Welke omgeving is voor bovenstaand probleem geschikt.

  • TRON
  • Registratie: September 2001
  • Laatst online: 16-08 07:26
Misschien effectiever werken? Waarom alles in 1 bestand gooien? Is alle informatie altijd nodig bij elke herberekening? Zo nee splits deze informatie dan naar andere bestanden. Je kan immers ook uit andere bestanden informatie halen.

Probeer - zover mogelijk - de formules te optimaliseren.

'k Denk dat het handigste is om met een database-applicatie te gaan werken.

Leren door te strijden? Dat doe je op CTFSpel.nl. Vraag een gratis proefpakket aan t.w.v. EUR 50 (excl. BTW)


  • SPee
  • Registratie: Oktober 2001
  • Laatst online: 20:20
Als ik jou was zou ik hiervoor een programma laten maken.

Ik denk dat als je puur windows gebruikt en het geen internet omgeving hoeft te zijn, je beter op een .Net omgeving kan zitten. Je hebt hiervoor dan minder overhead dan t.o. Perl.
Dan nog het wegschrijven. Als die data steeds veranderd of bijgewerkt wordt, dan is het wegschrijven in excel nog steeds geen optie. Dan moet je het volledig in een programma doen.

let the past be the past.


Verwijderd

Topicstarter
TRON schreef op woensdag 18 januari 2006 @ 11:57:
Misschien effectiever werken? Waarom alles in 1 bestand gooien? Is alle informatie altijd nodig bij elke herberekening? Zo nee splits deze informatie dan naar andere bestanden. Je kan immers ook uit andere bestanden informatie halen.

Probeer - zover mogelijk - de formules te optimaliseren.

'k Denk dat het handigste is om met een database-applicatie te gaan werken.
De data wordt maar 1-malig in de sheet gezet, en dan wordt er gerekend. Het is niet zo dat steeds de externe files geopend en gesloten worden.
Alle informatie dient inderdaad na wijzigingen herekend te worden.

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB/AI

Front verplichte underscores

Hangen alle "tabellen" van elkaar af? Dan kan het best zijn dat het niet heel veel kleiner/sneller kan worden. Maar als je een heel goed zicht hebt op wat het moet doen, en je weet dat het de komenden tijd niet significant zal veranderen, is maatwerk inderdaad best een optie. En als je zelf .Net kennis in huis hebt, is dat een voor de hand liggende keuze. Zo niet: Excel is verder eigenlijk helemaal niet nodig en csv is simpelweg een tekstbestand. Dus kan je ook voor een "willekeurige" andere taal gaan.

Maar een en ander hangt wel af van je kennis en van de (on)afhankelijkheid van de verschillende tabellen/files en het soort berekeningen er tussen. Mischien ben je wel het beste af met het naar een DB inladen en daarvandaan werken. De door jou genoemde en afgewezen mathematische software (afhankelijk van wat jij hier onder verstaat) lijkt me echter toch de juiste keuze. Denk aan een Matlab, eventueel door dit weer aan te spreken via C++

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


  • Gulf_5
  • Registratie: Maart 2004
  • Laatst online: 20-10-2024

Gulf_5

Lucht-v/w-aardig

Als je de CSV text files nou importeert in een Access Database.
Je kunt per soort berekening in Excel een aparte query voor access maken die de voor die berekening benodigde gegevens op een Excelblad zet en gaat rekenen.
Je kunt in Excel dan ook een soort cockpit maken waarmee je d.m.v. buttons naar de verschillende reken-sheets / -bestanden gaat. Met die buttons wordt dan een macro gestart die tevens de up-to-date gegevens uit Access haalt.

Een soortgelijk systeem heb ik vorige maand zelf zitten bouwen op mijn werk, en dat werkt perfect.
Macro voor importeren vanuit text. Query's op de database. Excel laadt de query's in. Formules in Excel rekenen etc.etc.
Het hele proces van importeren in Access duurt ongeveer 20 seconden, afhankelijk van de hoeveelheid en de grootte van files. Het inladen van de query's ook zoiets. (maar dit hoeft natuurlijk niet ieder moment, maar kan eens per dag ofzo ??) Het berekenen is uitgeschakeld en wordt alleen geactiveerd via de gemaakte macro, die d.m.v. de calculate functie in VBA alleen dat berekent waar ik om vraag...

(mocht bovenstaande niet helpen, kun je wellicht met VBA een macro maken die er voor zorgt dat niet ALLES berekend wordt, maar alleen wat je nodig hebt)

iets met foto's...

Pagina: 1