修正插入行时的公式

我在Excel工作表中使用以下公式,它在另一个工作表(ITEMS CONTROL)的单元格范围内执行SUM:

=SUMIF('ITEMS CONTROL'!$B$2:$B$20000,B$1,'ITEMS CONTROL'!$C$2:$C$20000) 

我的问题是,在工作表ITEMS CONTROL中插入行时,公式更改如下:

插入18行后:

 =SUMIF('ITEMS CONTROL'!$B$20:$B$20018,B$1,'ITEMS CONTROL'!$C$20:$C$20018) 

插入另外18行后:

 =SUMIF('ITEMS CONTROL'!$B$38:$B$20036,B$1,'ITEMS CONTROL'!$C$38:$C$20036) 

我应该改变什么来始终保持原来的公式?

请尝试:

 =SUMIF(INDIRECT("'ITEMS CONTROL'!$B$2:$B$20000"),B$1,INDIRECT("'ITEMS CONTROL'!$C$2:$C$20000")) 

为什么不使用这样的整列:

=SUMIF('ITEMS CONTROL'!$B:$B$,B$1,'ITEMS CONTROL'!$C:$C)

没有效率影响 – SUMIF只计算"used range" ,即使您指定了更大的范围