Excel formula: pirmā atbilstība starp diviem diapazoniem -

Satura rādītājs

Vispārēja formula

=INDEX(range2,MATCH(TRUE,COUNTIF(range1,range2)>0,0))

Kopsavilkums

Lai izgūtu pirmo atbilstību divos vērtību diapazonos, varat izmantot formulu, kuras pamatā ir funkcijas INDEX, MATCH un COUNTIF. Parādītajā piemērā formula G5 ir:

=INDEX(range2,MATCH(TRUE,COUNTIF(range1,range2)>0,0))

kur "diapazons1" ir nosauktais diapazons B5: B8, "diapazons2" ir nosauktais diapazons D5: D7.

Paskaidrojums

Šajā piemērā nosauktais diapazons "diapazons1" attiecas uz šūnām B5: B8, un nosauktais diapazons "diapazons2" attiecas uz D5: D7. Mēs izmantojam nosauktos diapazonus tikai ērtības un lasāmības nolūkos; formula darbojas labi arī ar regulārām šūnu atsaucēm.

Šīs formulas kodols ir INDEX un MATCH. Funkcija INDEX izgūst vērtību no diapazona2, kas apzīmē pirmo vērtību diapazonā2, kas atrodama diapazonā1. Funkcijai INDEX ir nepieciešams indekss (rindas numurs), un mēs šo vērtību ģenerējam, izmantojot funkciju MATCH, kas ir iestatīta atbilstoši formulas TRUE vērtībai šajā formulas daļā:

MATCH(TRUE,COUNTIF(range1,range2)>0,0)

Šeit atbilstības vērtība ir PATIESA, un šeit ar COUNTIF tiek izveidots uzmeklēšanas masīvs:

COUNTIF(range1,range2)>0

COUNTIF atgriež diapazona2 vērtību skaitu, kas parādās diapazonā1. Tā kā 2. diapazonā ir vairākas vērtības, COUNTIF atgriezīs vairākus rezultātus, kas izskatās šādi:

(0;0;1)

Mēs izmantojam "> 0", lai visus rezultātus piespiestu TRUE vai FALSE:

(FALSE;FALSE;TRUE)

Tad MATCH izdara savu lietu un atgriež pirmās PATIESĪBAS (ja tāda ir) pozīciju, kas parādās, šajā gadījumā skaitli 3.

Visbeidzot, INDEX atgriež vērtību šajā pozīcijā “Red”.

Interesanti raksti...