Excel:如何查找“最后一个”;“有效”;行中的值

Excel:如何查找“最后一个”;“有效”;行中的值,excel,excel-formula,Excel,Excel Formula,我有以下样式的工作簿: | A | B | C | | 1 | y | | | 2 | y | | | 3 | n | | | 4 | y | | | 5 | n | | | 6 | n | | | 7 | y | | 在C列中,我希望得到当前行上方A列的最后一个值,该行在B列中有“y” 因此,预期产出为: | A |

我有以下样式的工作簿:

| A    | B    | C    |
| 1    | y    |      |
| 2    | y    |      |
| 3    | n    |      |
| 4    | y    |      |
| 5    | n    |      |
| 6    | n    |      |
| 7    | y    |      |
在C列中,我希望得到当前行上方A列的最后一个值,该行在B列中有“y”

因此,预期产出为:

| A    | B    | C    |
| 1    | y    | ---  |
| 2    | y    | 1    |
| 3    | n    | 2    |
| 4    | y    | 2    |
| 5    | n    | 4    |
| 6    | n    | 4    |
| 7    | y    | 4    |
注:我实际上想用谷歌表格来做这件事,但我想一个普通的Excel函数就足够了


非常感谢

请尝试,在C2中复制:

=IF(B1="y",MAX(A$1:A1),C1)

您的公式必须检查前一行中的“y”,因此在C2中,您需要引用B1中的字符串,并使用A1中的数字或C列中先前选择的值

所以公式是:

=if(B1="y",A1,C1)
下面是它的屏幕截图:


根据OP的评论,下面是另一个屏幕截图,精确显示了上述问题中要求的输出:


将以下公式放入单元格
C2
,这是一个数组公式,因此不包括花括号,而是按
CTRL+SHIFT+ENTER
确认公式(而不是只按
ENTER

{=MAX(($B$1:$B1=“y”)*$A$1:$A1)}


你可以把公式拖下来。我没有在谷歌文档上测试过,但它可以与excel一起使用。

列A中可以有任何值吗,或者它们总是行号,总是增加1等等?你总是选择最大值,还是只是以前的值?理查德,对不起。你的回答完全正确,完全符合我的要求。非常感谢@PhilippJardas没问题,最好反复检查。我重做了工作,只是为了确保,并张贴了你的确切例子(这是我应该做的第一位)。