如何从行excel for Mac返回第二个非空白单元格

要返回一行中的第一个非空白单元格,我使用:

=INDEX(C1:F1,MATCH(TRUE,INDEX((C1:F1<>0),0),0)) 

但是,如何返回连续的第二个非空白单元格? 我的单元格中只有文本。

当我尝试= INDEX(C1:F1,AGGREGATE(15,6,COLUMN(C1:F1)/ SIGN(LEN(C1:F1)),2)),如build议。

我没有得到下一个非空白的单元格返回,我得到的F细胞返回,即使有其他人应该已经返回它之前。 如果F中没有任何东西,我得到0。

使用AGGREGATE函数的SMALL子函数 。

 =INDEX(A1:A13, AGGREGATE(15, 6, ROW(1:13)/SIGN(LEN(A1:A13)), 2)) 

2是小子function的k 。 用ROW(2:2)代替它,如果你想填满第三,第四等,请把所有其他的单元格引用加紧。

position_within

当将列索引号返回给INDEX函数时 , AGGREGATE函数使用COLUMN函数而不是ROW函数 COLUMN($A:$D)将给出C:F列中的位置 。 例如1,2,3或4。

position_within_columns

 {=INDEX(C1:F1,SMALL(IF(C1:F1<>"", COLUMN(C1:F1)-2),2))} 

https://exceljet.net/formula/get-nth-match-with-index-match

更新

-2-COLUMN(INDEX(C1:F1,1,1))+1所以全数组公式为:

 {=INDEX(C1:F1,SMALL(IF(C1:F1<>"", COLUMN(C1:F1)-COLUMN(INDEX(C1:F1,1,1))+1),2))} 

此外,您可以通过点击旁边的绿色检查接受答案https://stackoverflow.com/tour