我的数据范围是L1:L26
,其值是数字和字符串的混合。
L5
、、、、、&包含L8
数字。L11
其余包含L14
字符串。L20
L23
L26
我正在尝试获取前 3 个数值的总和。这些值是 7、45 和 11,因此存储在 中的结果M2
应该是 63。
我使用以下公式:
{=Sum(Sum(Offset(L1, Small(If(ISNUMBER (L2:L26), Row(L2:L26)))))}
该公式产生了错误。
注意:这是一个数组公式。
答案1
这个新公式肯定*有效:
{=SUM(L2:INDEX(L:L,SMALL(IF(ISNUMBER(L2:L26),ROW(L2:L26)),3)))}
请记住,这一次是作为数组公式输入。
看看你的公式,除了不必要的第二个之外,SUM()
还有四个主要错误:
- 中的
R
和之间有一个空格;(
ISNUMBER ()
SMALL()
缺少必需的第二个参数3
;OFFSET()
缺少必需的第三个参数0
;- 的第二个参数
OFFSET()
偏离了+1(应该是SMALL()-1
)。
然后有一个严重错误:OFFSET()
无法返回整个数组*。它只能在多个单元格中输入数组时用于填充范围。
*至少在 Excel 2007 中