![](https://cdn.wiki-base.com/5990576/excel_formula_running_total_in_table__2.png.webp)
Обща формула
=SUM(INDEX((column),1):(@column))
Обобщение
За да създадете текущ сбор в таблица на Excel, можете да използвате функцията INDEX, настроена със структурирана препратка. В показания пример формулата във F5 е:
=SUM(INDEX((Total),1):(@Total))
Когато се копира надолу в колоната, тази формула ще върне текущ сбор на всеки ред.
Обяснение
В основата си тази формула има прост модел като този:
=SUM(first:current)
Където "first" е първата клетка в колоната Total, а "current" е препратка към клетка в текущия ред на колоната Total.
За да получим препратка към първата клетка, използваме INDEX по следния начин:
INDEX((Total),1)
Тук масивът е цялата колона „Общо“, а номерът на реда е 1. Това работи, защото функцията INDEX връща препратка към първата клетка, а не действителната стойност.
За да получим препратка към текущия ред, използваме:
(@Total)
Това е стандартният структуриран референтен синтаксис за "този ред".
Тъй като формулата се копира надолу в колоната, препратката към първата клетка не се променя, но референтът към текущата клетка се променя на всеки ред. Резултатът е справка, която се разширява. Функцията SUM сумира стойностите в диапазона на всеки ред, създавайки текущо общо.
Просто разширяване на обхвата
Защо да не използвате обикновен разширяващ се диапазон като този?
=SUM($E$5:E5)
По някаква причина този вид смесена препратка се поврежда в таблица на Excel при добавяне на редове. Използването на INDEX със структурирана справка решава проблема.