本次的练习是:在工作表的第1行中有一些数值数据,其中有些数据为0,现在要使用公式将不为0的数据提取出来并放置在工作表第2行,如下图1所示。
?...解决方案
下面是我编写的一个数组公式。...解析
公式中:
IF(A1:H1=0,"",COLUMN(A1:H1))
用来获取非零数值所在的列号,结果为:
{1,"",3,"",5,"",7,""}
然后,使用SMALL函数来根据COLUMN函数的值获取相应的列号值...)
转换为:
=IFERROR(INDEX(A1:H1,1,SMALL({1,"",3,"",5,"",7,""},COLUMN(D1))),"")
转换为:
=IFERROR(INDEX(A1:H1,1...,SMALL({1,"",3,"",5,"",7,""},4)),"")
转换为:
=IFERROR(INDEX(A1:H1,1,7),"")
结果为单元格G1中的值:
4
这里,使用IFERROR函数避免找不到值时显示错误值