Av en eller annen grunn, hvis du vil utføre en operasjon på et område med bestemte indekser, vil du tenke på å bruke INDEX -funksjonen for å få en rekke verdier på spesifikke indekser. Som dette.
La oss forstå det med et eksempel.
Her har jeg en Rate -kolonne. Jeg vil summere verdier på posisjon 1,3, og 5. Jeg skriver denne formelen i C2.
= SUMME (INDEKS (A2: A11, {1,3,5}))
Overraskende returnerer ikke INDEX -funksjonen en rekke verdier når vi leverer en matrise som indekser. Vi får bare den første verdien. Og SUM -funksjonen returnerer bare summen av en verdi.
Så hvordan får vi INDEX -funksjonen til å returnere den matrisen. Vel, jeg fant denne løsningen på internett, og jeg forstår ikke helt hvordan det fungerer, men det fungerer.
Den generiske formelen for å få en rekke indekser
= SUM (INDEKS (område, N (HVIS (1, {tall))))
Område: Det er området du vil se etter gitt indeksnummer
Nummer: dette er indeksnummerene.
La oss nå bruke formelen ovenfor på vårt eksempel.
Skriv denne formelen i C2.
= SUMME (INDEKS (A2: A11, N (HVIS (1, {1,3,5})))
Og dette gir det riktige svaret som 90.
Hvordan det fungerer.
Vel, som jeg sa at jeg ikke vet hvorfor det fungerer og returnerer mengden tall, men her skjer det.
HVIS (1, {1,3,5}): Denne delen returnerer matrisen {1,3, 5} som forventet
N (IF (1, {1,3,5})) kan oversettes til N ({1,3,5}) som igjen gir oss {1,3,5}
MERK: N -funksjonen returnerer tallekvivalenten til en hvilken som helst verdi. Hvis en verdi ikke er tallkonverterbar, returnerer den 0 (som tekst). Og for feil returnerer det feil.
INDEX ((A2: A11, N (IF (1, {1,3,5}))): denne delen oversetter til INDEX ((A2: A11, {1,3,5}), og på en eller annen måte returnerer dette matrisen { 10,30,50}. Som du har sett tidligere når du skriver INDEX ((A2: A11, {1,3,5}) direkte i formelen, returnerer den bare 10. Men når vi bruker N og IF -funksjonen returnerer den hele Hvis du forstår det, gi meg beskjed i kommentarfeltet nedenfor.
Hvordan bruke cellereferanser for indeksverdier for å få en matrise
I eksemplet ovenfor har vi hardkodet indeksene i funksjon. Men hva om jeg vil ha det fra et område som kan endre seg. Erstatter vi {1,3,5} med rekkevidde? La oss prøve det.
Her har vi denne formelen i celle D2:
= SUM (INDEKS (A2: A11, N (HVIS (1, A2: A5)))
Dette gir 10. Den aller første verdien av den gitte indeksen. Selv om vi skriver det inn som en matriseformel ved hjelp av CTRL+SKIFT+ENTER, gir det det samme resultatet.
For å få det til å fungere, legg til + eller - (dobbel unary) operatør før område og skriv det inn som matriseformel.
{= SUMME (INDEKS (A2: A11, N (HVIS (1,+A2: A5)))}
Dette fungerer. Ikke spør meg hvordan? Det fungerer bare. Hvis du kan fortelle meg hvordan jeg vil inkludere navnet ditt og forklaringen her.
Så vi lærte å få en matrise fra INDEX -funksjonen. Det er noen sprø ting som skjer her i excel. Hvis du kan forklare hvordan det fungerer her i kommentarfeltet nedenfor, vil jeg inkludere det i forklaringen min med navnet ditt.
Last ned fil:
Relaterte artikler:
Matriser i Excel Formula
Bruk INDEX og MATCH til å slå opp verdi
Hvordan bruke LOOKUP -funksjon i Excel
Oppslagsverdi med flere kriterier
Populære artikler:
VLOOKUP -funksjonen i Excel
COUNTIF i Excel 2016
Slik bruker du SUMIF -funksjonen i Excel