I'm trying to calculate the weighted average of some data for each person B3:B on a list. I pull in the values and weights from a separate sheet based on a filter to match the person in that row of my current sheet, and not include null data.
This is the formula to calculate a single person's weighted average:
=AVERAGE.WEIGHTED(FILTER(Form!$G$2:$G, Form!$C$2:$C = $B3, Form!$J$2:$J <> ""), FILTER(Form!$J$2:$J, Form!$C$2:$C = $B3, Form!$J$2:$J <> ""))
But trying to Array it to avoid having the formula in every cell of the column still only gives me the first weighted average.
=ARRAYFORMULA(AVERAGE.WEIGHTED(FILTER(Form!$G$2:$G, Form!$C$2:$C = $B3:B, Form!$J$2:$J <> ""), FILTER(Form!$J$2:$J, Form!$C$2:$C = $B3:B, Form!$J$2:$J <> "")))
Is there a way to make this work?