Excel-formler som returnerer flere verdier, også kjent som en matrise, returnerer disse resultatene til nærliggende celler. Denne atferden kalles overflyt.
Formler som kan returnere matriser med variabel størrelse, kalles dynamiske matriseformler. Formler som for øyeblikket returnerer matriser som flyter over, kan refereres til som overflytende matriseformler.
Nedenfor finner du noen notater som hjelper deg med å forstå og bruke denne typen formler.
Hva betyr overflyt?
Obs!: Eldre matriseformler, kjent som eldre matriseformler, returnerer alltid et resultat med fast størrelse, det vil si de flyter alltid over i samme antall celler. Virkemåten for overflyt som er beskrevet i dette emnet, gjelder ikke for eldre matriseformler.
Overflyt betyr at en formel har resultert i flere verdier, og disse verdiene er plassert i de nærliggende cellene. For eksempel =SORTER(D2:D11,1,-1), som sorterer en matrise i synkende rekkefølge, returnerer en tilsvarende matrise som er 10 rader høy. Men du trenger bare å skrive inn formelen i cellen øverst til venstre, eller F2 i dette tilfellet, og den flyter automatisk ned til celle F11.
Viktige punkter
-
Når du trykker på ENTER for å bekrefte formelen, endrer Excel dynamisk størrelsen på utdataområdet og plassere resultatene i hver celle i dette området.
-
Hvis du skriver en dynamisk matriseformel som skal handle på en liste med data, kan det være nyttig å plassere den i en Excel-tabell, og deretter bruke strukturerte referanser til å referere til dataene. Dette er fordi strukturerte referanser automatisk justeres når rader legges til eller fjernes fra tabellen.
-
Matriseformler som flyter over, støttes ikke i selve Excel-tabeller, så du bør plassere dem i rutenettet utenfor tabellen. Tabeller er best egnet til å inneholde rader og kolonner med uavhengige data.
-
Når du skriver inn en matriseformel som flyter over, plasserer Excel en uthevet kantlinje rundt området når du merker en celle i overflytområdet. Kantlinjen forsvinner når du merker en celle utenfor området.
-
Bare den første cellen i overflytområdet kan redigeres. Hvis du velger en annen celle i overflytområdet, er formelen synlig på formellinjen, men teksten er skyggelagt og kan ikke endres. Hvis du trenger å oppdatere formelen, bør du velge cellen øverst til venstre i matriseområdet, endre den etter behov, og deretter oppdaterer Excel automatisk resten av overflytområdet når du trykker på ENTER.
-
Overlapping av formler – matriseformler kan ikke skrives inn hvis noe blokkerer utdataområdet. Hvis dette skjer, returnerer Excel en #OVERFLYT!-feilmelding som indikerer at det finnes en blokkering. Hvis du fjerner blokkeringen, flyter formelen ut som forventet. I eksemplet nedenfor overlapper formelens utdataområde et annet område med data, og vises med en prikket kantlinje som overlapper celler med verdier som indikerer at det ikke kan flyte over. Fjern blokkeringsdataene, eller kopier dem et annet sted, og formelen vil overflyte som forventet.
-
Eldre matriseformler som er angitt via CTRL+SKIFT+ENTER (CSE), støttes fortsatt med hensyn til bakoverkompatibilitet, men bør ikke lenger brukes. Hvis du vil, kan du konvertere eldre matriseformler til dynamiske matriseformler ved å finne den første cellen i matriseområdet, kopiere teksten i formelen, slette hele området til den eldre matrisen og deretter skrive inn formelen på nytt i cellen øverst til venstre. Før du oppgraderer eldre matriseformler til dynamiske matriseformler, bør du være oppmerksom på noen beregningsforskjeller mellom de to.
-
Excel har begrenset støtte for dynamiske matriser mellom arbeidsbøker, og dette scenarioet støttes bare når begge arbeidsbøkene er åpne. Hvis du lukker kildearbeidsboken, vil eventuelle koblede, dynamiske matriseformler returnere en #REF! feil når de er oppdaterte.
Trenger du mer hjelp?
Du kan alltid spørre en ekspert i det tekniske fellesskapet for Excel eller få støtte i Fellesskap.