Excel-løft -

Innholdsfortegnelse

Uttrykket "løfte" refererer til en beregningsatferd for matriser i Excel-formler. Når du gir en matrise til en funksjon som ikke er programmert til å akseptere matriser, vil "løfte" funksjonen og kalle den flere ganger, en gang for hver verdi i matrisen. Resultatet er en matrise med samme dimensjoner som inngangsmatrisen. Løfting er en innebygd atferd som skjer automatisk.

Eksempel

Eksemplet som vises illustrerer hva som skjer hvis du kaller LEN-funksjonen i området C5: C7, som inneholder tre verdier. LEN er ikke programmert til å håndtere arrays naturlig, så LEN kjøres tre ganger, en gang for hver verdi i en operasjon som denne:

=LEN(C5:C7) =LEN(("dog";"kitten";"fish")) =(3;6;4)

Legg merke til at resultatet er en vertikal matrise med tre verdier, akkurat som kildeområdet.

Håndterer flere resultater

Når løft skjer i en formel, vil det være flere resultater, og disse må imøtekommes.

I eksemplet ovenfor, fordi LEN returnerer tre separate verdier i en matrise, trenger vi å håndtere utdataene med en funksjon som kan fungere med matriser. Ett alternativ er å beregne et totalt antall tegn i området C5: C7 ved hjelp av SUMPRODUCT:

=SUMPRODUCT(LEN(C5:C7))

SUMPRODUCT vil håndtere arrays naturlig, så denne formelen krever ikke kontroll + shift + enter.

SUM-funksjonen kan også brukes, men må legges inn med CSE:

(=SUM(LEN(C5:C7)))

For mer informasjon om Excels "array-beregningsadferd", se denne presentasjonen av Joe McDaid om array-formler.

Merk: Et spesielt tilfelle av løft kalles "parvis løft", som kombinerer matriser parvis.

Interessante artikler...