我在Excel中有一个数字连续的范围,比如说:
A B C D E F G H I J K L
Line 1 => 0 0 0 3 2 8 3 6 0 0 0 0
所有单元格都是非空白的,但有些单元格包含零,有些单元格包含数字。此外,范围不能按升序或降序排列。
我需要一个公式(不是VBA),它将返回该范围内最后一个非零值的列(即上面单元格H1的第8列)。我可以用这个公式得到单元格H1的实际值:
LOOKUP(2,1/(A1:A10<>0),A1:A10)
但我无法找到获取该单元格的列号的方法。
有什么想法吗?
答案 0 :(得分:6)
你非常接近:
=LOOKUP(2,1/(A1:L1<>0),COLUMN(A1:L1))
答案 1 :(得分:1)
输入
=MAX(IF(YourRange=0,0,COLUMN(YourRange)))
作为数组公式(CTRL-SHIFT-ENTER)。
答案 2 :(得分:-1)
对我来说,数值的最佳解决方案是:
=IF(D497<>0,D497,IF(D496<>0,D496,IF(D495<>0,D495,IF(D494<>0,D494,IF(D493<>0,D493,D492)))))
它为您的需求范围提供了最后一个非零值,您可以通过在公式中添加更多行来进行。