
Генеричка формула
=SUM(INDEX(FILTER(range,logic),SEQUENCE(n,1,1,1)))
Резиме
Да бисте сумирали првих н подударних вредности у скупу података, можете користити формулу засновану на функцијама ФИЛТЕР и СЕКВЕНЦА. У приказаном примеру, формула у копији ћелије Г5 је:
=SUM(INDEX(FILTER(score,name=F5),SEQUENCE(3,1,1,1)))
при чему су имена (Б5: Б16) и резултат (Ц5: Ц16) именовани опсези.
Објашњење
Функција ФИЛТЕР, нова у програму Екцел 365, може да вам помогне да поједноставите неке незгодне проблеме са формулом.
У овом примеру циљ је да се суме прва 3 резултата и за Јакеа и за Хаилеи, на основу редоследа у табели. Укупно је 12 резултата, а Јаке и Хаилеи имају по 6 резултата.
Радећи изнутра, први задатак је генерисање листе оцена за свако име. То се ради помоћу функције ФИЛТЕР:
FILTER(score,name=F5)
Са „Јаке“ у ћелији Ф5, резултат је низ са свим Јакеовим резултатима попут овог:
(6;5;7;7;6;8)
Овај низ се враћа функцији ИНДЕКС као аргумент низа:
INDEX((6;5;7;7;6;8),SEQUENCE(3,1,1,1))
Функција СЕКУЕНЦЕ користи се за генерисање вредности за број реда и враћа низ са 3 броја,
SEQUENCE(3,1,1,1) // returns (1;2;3)
У овом тренутку можемо написати ИНДЕКС део формуле овако:
INDEX((6;5;7;7;6;8),(1;2;3))
ИНДЕКС враћа функције повезане са прва 3 реда у пољу функцији СУМ:
=SUM((6;5;7)) // returns 18
а СУМ враћа збир ових вредности као коначни резултат у Г5. Када се формула препише у ћелију Г6, резултат је збир првих 3 Хејлијева резултата.
Збир последњих н подударних вредности
Да сумирате последњих н подударних вредности, формулу можете прилагодити овако:
=SUM(INDEX(FILTER(score,name=F5),SEQUENCE(3,1,SUM(--(name=F5)),-1)))
Ова формула је овде детаљније објашњена.