Excel公式求助:根据B列值返回上一行对应A列值
Excel公式实现:返回对应上一行A列值到C列
场景1:当前行B列有值时返回上一行A列值,否则返回空白
适用于:B列某行存在内容时,C列对应行返回上一行的A列内容;若B列该行无内容,或是第一行(无上一行),则C列返回空白。
在C2单元格输入以下公式,下拉填充至目标行:
=IF(AND(ROW()>1,B2<>""),A1,"")
公式说明
ROW()>1:判断当前行不是第一行(第一行无对应上一行,直接返回空白)B2<>"":判断当前行B列不为空AND(...):同时满足两个条件时,返回上一行A列值(下拉时A1会自动转为A2、A3等相对引用)- 不满足条件时返回空白字符串
""
场景2:根据当前行B列的值,查找该值所在行的上一行A列值
适用于:在B列中匹配当前行B列的内容,找到对应行后返回其上一行的A列内容;若匹配到第一行,或未找到匹配值,则返回空白。
在C2单元格输入以下公式,下拉填充:
=IFERROR(INDEX(A:A,MATCH(B2,B:B,0)-1),"")
公式说明
MATCH(B2,B:B,0):精确查找B2的值在B列中的行号-1:获取匹配行的上一行行号INDEX(A:A,...):根据行号返回A列对应内容IFERROR(...):处理匹配到第一行(行号1减1为0导致INDEX报错)或未找到匹配值的情况,返回空白
内容的提问来源于stack exchange,提问作者Alex King
相关产品推荐
相关产品推荐

