Avatar billede morten_dalsgaard Praktikant
12. december 2014 - 13:46 Der er 11 kommentarer og
1 løsning

Sum.hviser

Hej.

Mit spørgsmål er, hvorvidt I ved om der er en stor forskel på om man laver en sum.hviser formel i Excel, hvor man kigger på hele kolonner:
, som fx ser sådan ud:
=SUM.HVISER($X:$X;$T:$T;"kat";$U:$U;"mus";$V:$V;"hund";$W:$W;"rotte")

kontra sådan her, hvor man afgrænser til færre rækker i stedet:
=SUM.HVISER($X1:$X5000;$T1:$T5000;"kat";$U1:$U5000;"mus";$V1:$V5000;"hund";$W1:$W5000;"rotte")

altså performancevise?


Jeg har et ark som løber tør for ressourcer ofte, og jeg kan simpelthen ikke finde ud af hvorfor..


på forhånd tak.
12. december 2014 - 13:55 #1
Det er ikke god skik at arbejde i hele ark, rækker eller kolonner.
Brug de anvendte celler, i dine cellereferencer.
12. december 2014 - 13:55 #2
... og det er selvfølgelig set i forhold til performance.
Avatar billede morten_dalsgaard Praktikant
12. december 2014 - 14:13 #3
okay, tak for svar.. Ha du andre gode ideer til, hvad der kan skyldes problemer med performance?
12. december 2014 - 14:26 #4
Svært at sige uden at kende opgaven.

Men generelt er nogle funktioner mere krævende end andre. F.eks. bruger OPSLAGs-funktionerne mange ressourcer. Med fordel kan INDEX/MATCH anvendes i stedet.

Lad være med at formatere hele rækker/kolonner - formater kun det anvendte område.

Undgå billeder i projektmappen.
Avatar billede morten_dalsgaard Praktikant
12. december 2014 - 14:33 #5
Jeg vi forsøge at skrive nogle referencer om og se om det virker.. Troede egentlig at den var intelligent nok til at vide hvor mange rækker den skulle kigge på...
Avatar billede xl-Enthusiast Ekspert
12. december 2014 - 14:42 #6
I tillæg til det erikjuul allerede har skrevet kan tilføjes:

LOPSLAG med 0 eller FALSK som sidste argument (hvis der er mange af dem) er noget af det der kan være med til at lægge Excel død. Hvis overhovedet muligt så sorter dine data i den slags situationer og brug 1 eller SAND som sidste argument i OPSLAG-funktionen. Det samme gælder, hvis du bruger SAMMENLIGN.

Undgå at bruge volatile funktioner (FOPRSKYDNING, TODAY(), SLUMP, INDIREKTE med flere).

Tryk på F5, Speciel, Sidste celle, OK. Hvis sidste celle ligger langt under og /eller langt til højre for hvad der er nødvendigt, så slet overflødige rækker/kolonner og gem herefter filen. Check "Sidste celle" nu er der, hvor du ønsker det.

Der kan være mange andre forhold der er problematiske, men som tidligere nævnt er det ikke nemt at sige noget om uden at se filen.
Avatar billede xl-Enthusiast Ekspert
12. december 2014 - 14:43 #7
FORSKYDNING
Avatar billede xl-Enthusiast Ekspert
12. december 2014 - 14:55 #8
Problemet med "full column references" er især i forbindelse med matrixformler. Jeg tror ikke det har den store betydning i forbindelse med  SUM.HVISER jf. blandt andet følgende sætning der er kopieret fra en Microsoft artikel:

Minimize the number of used cells in functions like SUM and SUMIF. Calculation time is proportional to the number of used cells (unused cells are ignored).

Artiklen (om Excel performance) kan findes her:

http://msdn.microsoft.com/en-us/library/office/ff700515%28v=office.14%29.aspx#Office2007excelPerf_MakingWorkbooksCalculateFaster

I artiklen findes en del VBA-kode der kan måle calculation time.
Avatar billede finb Ekspert
12. december 2014 - 15:01 #9
ARRAY i VBA kører stærkt og fylder ingenting.
finb
Avatar billede morten_dalsgaard Praktikant
12. december 2014 - 15:02 #10
endnu en gang tak for svar..:)
Avatar billede morten_dalsgaard Praktikant
15. december 2014 - 15:27 #11
Det så ud til at optimere mit ark ret godt.. Tak for hjælpen.
ErikJuul hjalp mig først, så det må være ham at points går til..
19. december 2014 - 12:03 #12
OK - du får et svar!
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

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