Excel formula: INDEX ar mainīgu masīvu -

Vispārēja formula

=INDEX(CHOOSE(number,array1,array2),MATCH(value,range,0))

Kopsavilkums

Lai iestatītu INDEX un MATCH formulu, kur INDEX nodrošinātais masīvs ir mainīgs, varat izmantot funkciju CHOOSE. Parādītajā piemērā I5 formula, kas nokopēta uz leju, ir:

=INDEX(CHOOSE(H5,Table1,Table2),MATCH(G5,Table1(Model),0),2)

Ar 1. un 2. tabulu, kā norādīts ekrānuzņēmumā.

Paskaidrojums

Būtībā tā ir parasta INDEX un MATCH funkcija:

=INDEX(array,MATCH(value,range,0))

Ja funkcija MATCH tiek izmantota, lai atrastu pareizo rindu, lai atgrieztos no masīva, un funkcija INDEX atgriež vērtību šajā masīvā.

Tomēr šajā gadījumā mēs vēlamies padarīt masīvu mainīgu, lai INDEX piešķirto diapazonu varētu mainīt lidojuma laikā. Mēs to darām ar funkciju CHOOSE:

CHOOSE(H5,Table1,Table2)

Funkcija CHOOSE atgriež vērtību no saraksta, izmantojot noteiktu pozīciju vai indeksu. Vērtība var būt konstante, šūnas atsauce, masīvs vai diapazons. Šajā piemērā skaitliskais indekss ir norādīts kolonnā H. Kad indeksa numurs ir 1, mēs izmantojam 1. tabulu. Kad indekss ir 2, mēs 2. tabulu barojam ar INDEX:

CHOOSE(1,Table1,Table2) // returns Table1 CHOOSE(2,Table1,Table2) // returns Table2

Piezīme: CHOOSE sniegtajiem diapazoniem nav jābūt tabulām vai nosauktiem diapazoniem.

I5 skaitlis slejā H ir 1, tāpēc CHOOSE atgriež 1. tabulu, un formula izšķiras šādi:

=INDEX(Table1,MATCH("A",Table1(Model),0),2)

Funkcija MATCH atgriež "A" pozīciju 1. tabulā, kas ir 1, un INDEX atgriež 1. tabulas 2. slejas 1. rindas vērtību, kas ir 20,00 USD

=INDEX(Table1,1,2) // returns $20.00

Interesanti raksti...