Прежде всего, AVERAGE
ничего не делает в вашей формуле, так как аргумент, который вы ей передаете, это всего лишь одно значение. Вы уже делаете средний расчет путем деления на сумму. Это среднее на самом деле является взвешенным средним, и поэтому вы даже не смогли бы достичь этого с простой функцией AVERAGE
.
Я вижу несколько способов сделать эту формулу более общей, поэтомупродолжает работать, когда вы добавляете строки:
1. Используйте SUMPRODUCT
=SUMPRODUCT(B4:B100,L4:L100)/SUM(B4:B100)
Номер строки 100 выбран произвольно, но, очевидно, должен охватывать все строки данных. Если у вас нет данных, появляющихся под вашей таблицей, тогда можно добавить большое поле. Вы захотите избежать ситуации, когда вы думаете, что добавляете строку в таблицу, но фактически выходите за пределы диапазона формулы. Использование правильных таблиц Excel может помочь избежать этой ситуации.
2. Используйте формулу массива
Это будет второй вариант, когда формула усложняется и не может быть выполнена с «простым» SUMPRODUCT
. Но приведенное выше будет переводиться в эту формулу массива:
=SUM(B4:B100*L4:L100)/SUM(B4:B100)
После того, как вы ввели это в строке формул, обязательно нажмите Ctrl + Shift + Введите , чтобы ввести его. Только тогда он будет действовать как формула массива .
Опять то же замечание о строке номер 100.
3. Используйте дополнительный столбец
Все становится проще, если использовать дополнительный столбец для хранения произведения значений B & L для каждой строки. Таким образом, вы должны поместить в ячейку N4 следующую формулу:
=B4*L4
... и затем скопировать эту относительную формулу в другие строки. Вы можете скрыть этот столбец, если хотите.
Тогда общая формула может быть:
=SUM(N4:N100)/SUM(B4:B100)
С этим решением вы должны всегда копировать строку, когдавставка новой строки, так как вам нужно, чтобы столбец N содержал формулу промежуточного продукта также для любой новой строки.