Avatar billede ae03 Novice
26. april 2012 - 14:50 Der er 4 kommentarer og
1 løsning

Gøre Excel-ark mindre beregningstungt

Jeg har et Excelark med en del formler, bl.a. ca 750 celler med forskellige varianter af
=SUMPRODUKT((INDIREKTE("Data!$"&$B$1&"$2:$"&$B$1&"$100000")=$B18)*(INDIREKTE("Data!$"&$B$2&"$2:$"&$B$2&"$100000")=$B$17)*(INDIREKTE("Data!$"&$B$3&"$2:$"&$B$3&"$100000")=M$17))
samt et par hundrede sumfunktioner.

Det gør arket meget tungt, såvel når det åbnes, som når det genberegnes.

Opgaven er at sammentælle en databaseregistreringer i en række krydstabeller. Den burde således laves direkte i databasen eller i et statistikprogram, men da resultaterne fremover skal kunne produceres regelmæssigt af en kollega uden forudsætninger for nogle af disse løsninger, skal det være i Excel baseret på standardudtræk fra databasen. Og da standardudtrækket med tiden kan ændres med nye kolonner, er brugeren nødt til selv at kunne angive, hvad det er for nogle kolonner, de relevante data står i i hvert enkelt udtræk.

Jeg vil meget gerne have gode ideer til, hvordan sammentællingen kan lettes, så arket ikke er så tungt at arbejde med. Den oplagte er naturligvis at begrænse antallet af rækker i optællingerne til noget mindre end 100.000. Det er bare heller ikke umiddelbart på tale, selv om der ikke lige nu er så mange i udtrækket. Nogen gode ideer?

Vh Lars
Avatar billede Slettet bruger
26. april 2012 - 15:05 #1
Hvis du er indstillet på at sende filen skal jeg gerne forsøge at hjælpe uden dog at turde love noget.

hans.knudsensnabelamail.tele.dk
Avatar billede ae03 Novice
26. april 2012 - 15:23 #2
Det kan jeg godt. Men jeg er lige selv kommet på at sætte arket til at finde sidste række med data og benytte det som maksimalt rækkenummer for sammentællingerne. Jeg ser lige, om ikke det hjælper, og så sender jeg det, hvis det stadig er uforholdsmæssigt tungt.
Avatar billede ae03 Novice
02. maj 2012 - 13:43 #3
Erstatning af "$100000" i alle relevante formler med en reference til en celle, der finder det højeste rækkenummer med data i kolonne A, har i praksis løst problemet.

Det kommer nok i nogen grad igen, hvis antallet af rækker med data bliver højt nok, men så vil det ikke være i forbindelse med regelmæssige kvartalsvise dataopgørelser, men kun ved opgørelser for betydeligt længere tidsperioder. Så er den lange beregningstid til at leve med.

- Hans. I øvrigt havde jeg ikke kunnet sende filen, da den er fyldt med persondata. Men tak for tilbudet.

Lars
Avatar billede Slettet bruger
02. maj 2012 - 14:02 #4
Jeg håber der er nogen der vil tage ved lære af tråden her. For mig at se er der en ret udbredt og uheldig tendens til at bruge for store referenceområder i formler, herunder også "full column references".

Hans
Avatar billede ae03 Novice
02. maj 2012 - 14:23 #5
Enig i det med de store områder. Mit problem er et lysende eksempel på, at det stadig har konsekvenser at svine med processorkraften.

Her var det desværre nødvendigt at bruge et stort celleområde for at fremtidssikre arket en smule. Men det kunne heldigvis gøres mere elegant end i min første løsning.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel-kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester