对数组使用Excel N函数

Tom*_*rpe 3 excel excel-formula

这是一个相当基本的问题,但我一直无法找到以前的答案-可能部分是因为很难在没有很多错误匹配的情况下搜索“ N函数”。

如果单元格包含数字,则N函数是返回数字的简洁方法;如果单元格包含文本,则N函数是返回零的简洁方法。它比使用ISNUMBER函数短,并且在数组公式中可能很有用。

我为什么要写

=SUM(N({1,2,3}))
Run Code Online (Sandbox Code Playgroud)

得到答案6,但是如果我写

=SUM(N(A1:A3))
Run Code Online (Sandbox Code Playgroud)

A1:A3包含一些数字,我只是得到第一个数字?

如果我转到“求值公式”,则表明即使将A1:A3作为数组公式输入,也不会将A1:A3视为数组。

有没有一种方法可以强制N函数在数组公式中工作?

XOR*_* LX 5

尝试:

=SUM(N(+A1:A3))

一元加号运算符在这里足以从所传递的范围强制数组返回。

将一元运算符应用于范围内的每个值的结果也很方便,这样,当我们将它们传递给N时,结果值将等于我们简单地应用N所获得的值每个功能。

问候

  • 是的,当然:1,“ X”,3将强制= SUM(-A1:A3)返回错误,尽管= SUM(+ A1:A3)将返回4。Re布尔类型= SUM(+ A1) :A3)等效于= SUM(A1:A3),其中A1:A3包含1,TRUE,3。回想一下,作为工作表范围(或数组)一部分传递给SUM的布尔值不强制转换为其数值等效项,尽管它们在作为参数传递时即= SUM(1,TRUE,3)。 (2认同)