将数组公式从MS Excel转换为Google表格

我在一个问题上束手无策,希望能在这里指出我犯的一个简单的错误。 我有一个公式,我正在使用的Excel电子表格,工作正常,但是当我导入到Google表格,它停止工作。

在Excel中工作的公式是

{=INDEX('2009-2010'!D2:D20,MIN(IF(SUBTOTAL(3,OFFSET('2009-2010'!D2,ROW('2009-2010'!D2:D20)-ROW('2009-2010'!D2),0)),ROW('2009-2010'!D2:D20)-ROW('2009-2010'!D2)+1)))} 

而我尝试和使用它的方式是

 =ArrayFormula(INDEX('2009-2010'!D2:D20,MIN(IF(SUBTOTAL(3,OFFSET('2009-2010'!D2,ROW('2009-2010'!D2:D20)-ROW('2009-2010'!D2),0)),ROW('2009-2010'!D2:D20)-ROW('2009-2010'!D2)+1)))) 

但是并不是按照它的意思去做(它显示另一个名为“2009-2010”的工作表的'D'列的顶部可见单元格),它只是插入整个列。 我已经尝试了几个工作,但我在我的头 – 任何援助将是太棒了!

有些令人惊讶的是,我一直无法find任何关于某人试图在Google表格中执行相同function的任何内容…?!

这是一个古老的,但如果有人仍然感兴趣的人可以使用这个公式,而不是在Excel和电子表格:

 =INDEX('2009-2010'!D2:D20,MIN(IF('2009-2010'!D2:D20>0,ROW('2009-2010'!D2:D20)-ROW('2009-2010'!D2)+1))) 
  • IF('2009-2010'!D2:D20>0部分也可以更改为<>""如果值是文本。

问题是电子表格不像Excel那样处理所有的数组公式场景。 例如,Excel计算每个项目的CountA并返回一个0和1的数组,并且Spreadsheet计算整个数组并返回一个计数结果。

通过避免OFFSET易失性函数,此公式也更有效。