
Резиме
За превођење текстуалних вредности у бројеве и збрајање резултата можете користити формулу ИНДЕКС и МАТЦХ и функцију СУМ. У приказаном примеру, формула у Х5 је:
(=SUM(INDEX(value,N(IF(1,MATCH(C5:G5,code,0))))))
где је „код“ именовани опсег К5: К9, а „вредност“ именовани опсег Л5: Л9.
Напомена: ово је формула низа и мора се унети са цонтрол + схифт + ентер.
Објашњење
Срж ове формуле је основна формула ИНДЕКС и МАТЦХ, која се користи за превођење текстуалних вредности у бројеве како је дефинисано у табели претраживања. На пример, да бисмо превели „ЕКС“ на одговарајући број, користили бисмо:
=INDEX(value,MATCH("EX",code,0))
која би се вратила 4.
Но, преокрет у овом проблему је тај што желимо да преведемо и саберемо низ текстуалних вредности у колонама од Ц до Г у бројеве. То значи да морамо да пружимо више од једне вредности претраживања, а ИНДЕКС нам треба да бисмо вратили више резултата. Стандардни приступ је формула попут ове:
=SUM(INDEX(value,MATCH(C5:G5,code,0)))
Након покретања МАТЦХ-а, имамо низ са 5 предмета:
=SUM(INDEX(value,(2,2,3,2,5)))
Изгледа да би ИНДЕКС требао да врати 5 резултата у Збир. Међутим, ако покушате ово, функција ИНДЕКС ће вратити само један резултат СУМ. Да бисмо ИНДЕКС вратили више резултата, морамо да користимо прилично нејасан трик и умотамо МАТЦХ у Н и ИФ овако:
N(IF(1,MATCH(C5:G5,code,0)))
Ово ефикасно приморава ИНДЕКС да пружи више од једне вредности функцији СУМ. Након покретања ИНДЕКС-а имамо:
=SUM((3,3,2,3,-1))
А функција СУМ враћа зброј ставки у низу, 10. Да бисте добро написали ово понашање, погледајте овај занимљив чланак на веб локацији ЕКСЦЕЛКСОР.