Excel-lyft -

Innehållsförteckning

Uttrycket "lyft" avser en matrisberäkning i Excel-formler. När du ger en matris till en funktion som inte är programmerad att acceptera matriser naturligt kommer Excel att "lyfta" funktionen och anropa den flera gånger, en gång för varje värde i matrisen. Resultatet blir en matris med samma dimensioner som inmatningsmatrisen. Lyft är ett inbyggt beteende som sker automatiskt.

Exempel

Exemplet som visas illustrerar vad som händer om du anropar LEN-funktionen i intervallet C5: C7, som innehåller tre värden. LEN är inte programmerad för att hantera arrays naturligt, så LEN körs tre gånger, en gång för varje värde i en sådan operation:

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

Observera att resultatet är en vertikal matris med tre värden, precis som källområdet.

Hantera flera resultat

När lyft sker i en formel kommer det att finnas flera resultat, och dessa måste tillgodoses.

I exemplet ovan, eftersom LEN returnerar tre separata värden i en matris, behöver vi hantera utdata med en funktion som kan fungera med matriser. Ett alternativ är att beräkna ett totalt teckenantal i intervallet C5: C7 med SUMPRODUCT:

=SUMPRODUCT(LEN(C5:C7))

SUMPRODUCT hanterar arrays naturligt, så den här formeln kräver inte kontroll + shift + enter.

SUM-funktionen kan också användas, men måste anges med CSE:

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

För mer information om Excels "matrisberäkningsbeteende", se denna presentation av Joe McDaid om matrisformler.

Obs: Ett speciellt fall av lyft kallas "parvis lyft", som kombinerar arrayer på ett parvis sätt.

Intressanta artiklar...