Excel 查找与0不同的最后一个值(不带VBA)

Excel 查找与0不同的最后一个值(不带VBA),excel,Excel,我有以下excel表格: StartDate YTDActual 1/1/2013 100 2/1/2013 200 3/1/2013 99 4/1/2013 33 5/1/2013 45 6/1/2013 0 7/1/2013 0 是否有一个公式可以为每个StartDate返回YTDActual中的关联值(如果该值不同于0),否则它将返回上一行中与0不同的最后一个YTDActual值 因此,基本上,公式将在NewValue列中生成以下值: StartDate

我有以下excel表格:

StartDate  YTDActual
1/1/2013   100
2/1/2013   200
3/1/2013   99
4/1/2013   33
5/1/2013   45
6/1/2013   0
7/1/2013   0
是否有一个公式可以为每个StartDate返回YTDActual中的关联值(如果该值不同于0),否则它将返回上一行中与0不同的最后一个YTDActual值

因此,基本上,公式将在NewValue列中生成以下值:

StartDate  NewValue
1/1/2013   100
2/1/2013   200
3/1/2013   99
4/1/2013   33
5/1/2013   45
6/1/2013   45
7/1/2013   45
=IF(INDEX(Availability[YTDActual], MATCH(B2, Availability[StartDate], 0)) <>0, INDEX(Availability[YTDActual], MATCH(B32, Availability[StartDate], 0)), INDEX(Availability[YTDActual],MATCH(0,Availability[YTDActual],0)-1))
请注意,在六月和七月,值为45,因为五月的最后一个非零YTDActual值为45

谢谢


更新:只是澄清一下,第二张表放在另一张表上,它们不是并排的。

如果您的日期从A2开始,年初至今实际金额从B2开始,请尝试复制C2的公式

=查找2,1/B$2:B20,B$2:B2

这将为您提供所需的结果

这样做:

Col A      Col B        Col C
StartDate  YTDActual    NewValue
1/1/2013   100          =if(B2<>0,B2,C1)
...

然后向下拖动C列中的公式

新数据是否在YTDActual旁边的列中?我在这里得到的是,它是否需要引用日期,或者它可能只是一个带有以下内容的C列:

=if(B2=0,C1,B2)
如果不是零,则返回B2,否则返回其上方的单元格,可将其输入单元格C2,然后向下拖动以覆盖其他单元格


如果将新数据放在上面B列旁边的列中不起作用,那么我认为在没有VBA的情况下,您可能很难做到这一点。您将遇到的问题是无法创建循环,因此如果一个值为零,您可以检查另一个值,但这也可能为零,依此类推。

我最后对NewValue列使用了以下公式:

StartDate  NewValue
1/1/2013   100
2/1/2013   200
3/1/2013   99
4/1/2013   33
5/1/2013   45
6/1/2013   45
7/1/2013   45
=IF(INDEX(Availability[YTDActual], MATCH(B2, Availability[StartDate], 0)) <>0, INDEX(Availability[YTDActual], MATCH(B32, Availability[StartDate], 0)), INDEX(Availability[YTDActual],MATCH(0,Availability[YTDActual],0)-1))

其中Availability是excel表的名称,YTDActual是列的名称,B2,B3。。。包含日期。

答案是否定的,数据会进入电子表格的另一部分。约翰或克里斯的建议对你不起作用吗?不幸的是,它们对我的情况不起作用。我的情况更为复杂,我没有仔细检查所有的细节,我不是开发电子表格的人。这同样有效。你能解释一下这些参数吗?表达式1/B$2:B2 0似乎不寻常。谢谢,如果NewValue列与YTDActual列并排,不幸的是,列A和B或在一张纸上,那么就有另一个带有日期的部分,需要查找这些值。我认为列是否相邻并不重要,如果是第V列,您只需相应地更改公式……@costa,请详细说明/更新您的问题,并提供更好的解释-没有理由需要将新公式放在相邻单元格上。。。有很多方法可以实现您的目标,但这在很大程度上取决于您的数据是什么样子的,为此,我们需要进行大量的阐述……您需要详细阐述问题并提供更好的细节,否则我们无法正确回答。。。。