在给定单元格地址的右侧或左侧的列中返回单元格地址的值

时间:2013-09-11 02:39:52

标签: excel

我正在使用以下公式返回sheet2中与sheet1中的值相匹配的值的地址:

=ADDRESS(MATCH(C18,Sheet2!C:C,0),3) 

如果sheet1单元格E19中的返回结果为(sheet2$c$8(并且不为空), 那么我想找到sheet2 $h$8中的值。

1 个答案:

答案 0 :(得分:1)

嵌套公式。使用Match函数测试搜索的值是否存在。如果确实存在,则If语句的错误部分使用VLOOKUP在H列中查找相应的值。

=If(IsError(Match(C18,Sheet2!C:C,False)),"match not found",VLOOKUP(C18,Sheet2!C:H,6,False))

(未经测试,请仔细检查我将括号放在正确的位置)

使用这种方法,您只能进行从左到右的搜索,例如,您无法通过搜索C列来返回A列中的值。您可以使用{{1}修改此方法函数(我知道是可能的)或可能是INDEX函数。

以下是使用OFFSET函数(经过测试和验证)搜索C列时在A列的相应行中查找值的示例:

Index

您可以添加错误逻辑,如:

=INDEX(Sheet2!A:A,MATCH(C18,Sheet2!C:C,FALSE))