Взвешенное значение AverageIFs с использованием SumProduct - PullRequest
0 голосов
/ 27 апреля 2018

Мы все знаем, что делает AverageIfs. Однако что, если я хочу превратить свой оператор AverageIFs в средневзвешенное значение на основе данных в другом столбце. Предположим, что на вкладке «Главная» каждая строка имеет количество в столбце H. Как вы можете видеть прямо сейчас, я усредняю ​​цены в столбце J на ​​основе критерия в столбце C. Проблема: каждая строка имеет уникальное количество, поэтому Средневзвешенное значение, основанное на количествах в строке H, которые соответствуют критериям, является более точным, чем просто базовая средняя цена. У кого-нибудь есть идеи, как изменить эту формулу?

ProductHier Common Name  Total Sls   Total Fct  2017 avg price  2018 avg price
B1B1403A01  ACC - Finished Goods     2,448   2,612   99      118 
B1B1403A02  ACC - Finished Goods     3,143   3,350   165     180 
B1B1403A05  ACC - Finished Goods     709     613     162     152 
B1B1403A06  ACC - Finished Goods     206     150     123     142 
B1B1403A07  ACC - Finished Goods     1,714   1,441   152     142 
B1B1403A08  ACC - Finished Goods     253     295     142     160 
B1B1403A09  ACC - Finished Goods     2,447   2,435   88      98 
B1B1403A11  ACC - Finished Goods     2,334   3,281   149     174 





  =SUMPRODUCT((Master!C2:C5000='Forecast Calc'!D2)*Master!H2:H5000,Master!J2:J5000)/SUMIFS(Master!H:H,Master!C:C,'Forecast Calc'!D2,Master!J:J,"<>0")

1 Ответ

0 голосов
/ 28 апреля 2018

использовать SUMPRODUCT, деленное на SUMIF:

=SUMPRODUCT((F2:F9="ACC - Finished Goods")*H2:H9,J2:J9)/SUMIFS(H2:H9,F2:F9,"ACC - Finished Goods",J2:J9,"<>0")

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...