IFERROR(公式,“”)传递#N / A而不是“”

当我将以下数组公式应用于7行时,它将为6和7行返回#N / A。为什么不使用“”来代替?

=IFERROR(ROW(A1:A5),"") 

当我检查iserror(A6或A7)它报告真实。

那是因为背后的逻辑。 IFERROR做什么? 它将用第二个参数replace给定数组中的错误条目。

 =IFERROR(ROW(A1:A5),"") 

会生成一个有5个值的数组。 上面没有错误,但是如果你正在使用一个可能包含错误和NA的范围,比如

 =IFERROR(A1:A5,"") 

IFERROR函数将用""replace给定数组中的错误条目。 就这样。 它不会改变数组的大小

最后你得到一个有5个条目的数组。 超越没有得到任何值的数组。 这就是为什么#N/A显示。