首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何规避Excel IF函数的深度限制?

如何规避Excel IF函数的深度限制?
EN

Stack Overflow用户
提问于 2009-11-13 19:11:28
回答 4查看 744关注 0票数 0

对于Excel公式,我需要包含数值的单元格列表中的第一个单元格:

代码语言:javascript
运行
复制
 A  |  B  |  C  | ... |  Z  |
-----------------------------
    | 0.1 | 0.4 | ... | =0.1
    |     | 0.2 | ... | =0.2

我使用这个模式:

代码语言:javascript
运行
复制
IF(ISNUMERIC(A1);A1;IF(ISNUMERIC(B1);A2;IF(ISNUMERIC(C1);C1;IF(...))))))))

不幸的是,这只适用于七列,因为Excel中的最大长度是有限的。

有没有办法重新表述这个公式,这样它就不会随着每一列的增加而变得更深?

EN

回答 4

Stack Overflow用户

发布于 2009-11-13 19:28:20

好的,让我们看看。尝尝这个

代码语言:javascript
运行
复制
=INDEX(A1:Y1,SUMPRODUCT((A1:Y1="")*1)+1)

sumproduct计算空格的数量,然后索引在number of blanks + 1所在的单元格中查找该值

希望这能有所帮助。

票数 3
EN

Stack Overflow用户

发布于 2009-11-13 23:51:42

在单个单元格中,您可以使用数组公式执行此操作:

Isnumber在Excel2007中提供测试

将结果乘以column()

使用if语句来帮助执行以下min函数:

使用min函数标识第一个数字列。

要创建数组公式时,请记住使用Ctrl-Shift-Enter组合键,而不仅仅是enter组合键。

代码语言:javascript
运行
复制
=INDEX(A1:Z1,MIN(IF(ISNUMBER(A1:Z1),COLUMN(A1:Z1),5000)))

如果您需要该功能,它还会在多个行中查找第一个使用的列。

票数 2
EN

Stack Overflow用户

发布于 2009-11-13 19:32:59

也许这会对XL: How to Determine Top/Bottom Used Cells in a Sparse Array有所帮助

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1728587

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档