Tout d'abord, vous devriez changer cela en une SUMPRODUCT
formule. Il ne nécessite pas que vous le saisissiez sous forme de formule matricielle et, à mon humble avis, il est plus facile à utiliser.
=SUMPRODUCT(M16:M977*(MOD(ROW(M16:M977)-ROW(M16),4)=0))
Pour éviter le comportement d'Excel lorsque vous insérez des lignes, je vous recommande de transformer vos données en tableau. (Insérer un ruban> Tableau) Il est très facile de référencer "toutes les données de cette zone" et il met à jour votre façon de voir lorsque le tableau devient plus grand ou plus petit. Dans ce cas, la formule ressemblerait à ceci:
=SUMPRODUCT(Table1[Hours]*(MOD(ROW(Table1[Hours])-ROW(Table1[[#Headers],[Hours]])-1,4)=0))
Si vous ne pouvez pas le transformer en table pour une raison quelconque, je vous recommande de créer une plage nommée et de la référencer à la place. La formule pour la plage nommée serait:
=OFFSET(Sheet3!$M$1,15,0,MATCH(9E+99,Sheet3!$M:$M)-15)
... et la formule la référant serait:
=SUMPRODUCT(rngHours*(MOD(ROW(rngHours)-ROW(OFFSET(rngHours,0,0,1,1)),4)=0))
... où rngHours
est le nom que vous avez donné à la plage nommée.
Si vous ne voulez vraiment pas utiliser de plages nommées, vous pouvez tout décomposer en une seule et même formule, mais cela va devenir compliqué, bien que sa fonction soit la suivante:
=SUMPRODUCT(OFFSET(Sheet3!$M$1,15,0,MATCH(9E+99,Sheet3!$M:$M)-15)*(MOD(ROW(OFFSET(Sheet3!$M$1,15,0,MATCH(9E+99,Sheet3!$M:$M)-15))-ROW(OFFSET(Sheet3!$M$1,15,0)),4)=0))