I transposed your row to a column (which could be put back), and used a helper column (which could probably be eliminated).
-A-- ---B--- --C-- --------------------------------------------D--------------------------------------------
1 Nums Weights Avg
2 4 1 16.67 C2: =SUMPRODUCT(rgnInp, rgnWgt) / (ROWS(rgnInp) - conFiltLen + 1)
3 5 2
4 1 3 conFiltLen RefersTo: =4
5 6 4
6 2 4 frmZero RefersTo: =MATCH(0, $A:$A, 0) - 1
7 7 4
8 3 3 rgnInp RefersTo: =INDEX($A:$A, ROW(Sheet1!$A$2)):INDEX(Sheet1!$A:$A, frmZero)
9 1 2
10 12 1 B3 and down: =MAX(0, MIN(ROWS(A$1:A3) - 1, ROWS(rgnInp) - ROWS(A$1:A3) + 2, conFiltLen) )
11 0 0
12 100 0
13 100 0
14 100 0
15 100 0
16 100 0
17 100 0
Bookmarks