SCAN funktionen i Excel

Resumé

Funktionen SCAN anvender en brugerdefineret LAMBDA-funktion til hvert element i en given matrix og returnerer en matrix, der indeholder de mellemliggende værdier, der blev oprettet under scanningen. SCAN kan bruges til at generere løbende totaler og andre beregninger, der viser mellemresultater.

Formål

Scanner et array og returner mellemresultater

Returværdi

En række resultater

Argumenter

Indledende_værdi – [valgfri] Akkumulationens begyndelsesværdi.

matrix – Det array, der skal scannes.

funktion – Den brugerdefinerede LAMBDA-funktion, der skal anvendes.

Syntaks

=SCAN([Indledende_værdi]; matrix; funktion)

Noter

Funktionen SCAN anvender en brugerdefineret LAMBDA-funktion til hvert element i et givet array og returnerer et array, der indeholder hver mellemværdi, der er oprettet under scanningen. SCAN kan bruges til at generere løbende totaler og andre beregninger, der viser mellemliggende eller trinvise resultater.

SCAN bruger LAMBDA-funktionen til at anvende den påkrævede formellogik. LAMBDA anvendes på hver værdi, og resultatet fra SCAN er en matrix af resultater med samme dimensioner som den oprindelige matrix. Ligesom funktionen REDUCE itererer SCAN alle elementer i et array og udfører en beregning på hvert element. Men mens REDUCE returnerer en enkelt værdi, returnerer SCAN en matrix af værdier.

Funktionen SCAN benytter tre argumenter: Indledende_værdi, matrix og funktion. Indledende_værdi er den oprindelige startværdi, der skal bruges til det første resultat. Indledende_værdi er valgfri. Matrix er det array, der skal scannes, og funktion er en brugerdefineret LAMBDA-funktion der udføres på hvert element i arrayet.

LAMBDA struktur

Funktionen SCAN bruger LAMBDA-funktionen til at anvende den nødvendige formellogik. Strukturen af den LAMBDA, der bruges inde i SCAN, ser sådan ud:

LAMBDA(a;v;beregning)

Det første argument, a, er den akkumulator, der bruges til at oprette mellemværdier. Akkumuleringen begynder med Indledende_værdi angivet i SCAN og ændres, når funktionen SCAN bevæger sig gennem elementerne i arrayet og anvender en beregning. Argumentet v repræsenterer værdien af hvert element i arrayet. Beregning er den formel, der skaber de mellemværdier, der vises i det endelige resultat.

Bemærk: SCAN returnerer en række mellemresultater.

Eksempler

I formlen nedenfor bruges SCAN til at skabe en løbende total af et array med tre værdier:

=SCAN(0;{1;2;3};LAMBDA(a;v;a+v)) // returnerer {1,3,6}

I LAMBDA-funktionen er a den inledende_værdi overført til SCAN (nul), og v repræsenterer de individuelle elementer i array. LAMBDA kører én gang for hvert element i arrayet, og ved hver iteration tilføjes værdien af v til akkumulatoren. SCAN returnerer arrayet {1,3,6} som et endeligt resultat.

I regnearket vist ovenfor er formlen i C2:

=SCAN(0;A2:A21;LAMBDA(a;v;a+v))

Resultatet er en løbende sum af værdier i området A2:A21.

Tekstværdier

For at arbejde med tekstværdier skal du indstille inledende_værdi til en tom streng (“”). Formlen nedenfor opretter en løbende sammenkædning af et array:

=SCAN("";{"a";"b";"c"};LAMBDA(a;v;a&v)) // returnerer {"a","ab","abc"}

Bemærk, at fordi den første matrix har tre værdier, har den resulterende matrix også tre værdier.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

8 + 8 =