首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >检查列中是否存在单元格值,然后获取下一个单元格的值

检查列中是否存在单元格值,然后获取下一个单元格的值
EN

Stack Overflow用户
提问于 2012-10-16 20:55:32
回答 3查看 798.2K关注 0票数 91

在检查列中是否存在单元格值之后,我需要获取匹配单元格旁边的单元格的值。例如,我检查column B中是否存在cell A1中的值,并假设它与B5匹配,那么我想要cell C5中的值。

为了解决问题的前半部分,我这样做了…

代码语言:javascript
复制
=IF(ISERROR(MATCH(A1,B:B, 0)), "No Match", "Match")

...and它起作用了。然后,多亏了一个earlier answer on SO,我还能够获得匹配单元格的行号:

代码语言:javascript
复制
=IF(ISERROR(MATCH(A1,B:B, 0)), "No Match", "Match on Row " & MATCH(A1,B:B, 0))

因此,很自然地,为了获得下一个单元格的值,我尝试...

代码语言:javascript
复制
=IF(ISERROR(MATCH(A1,B:B, 0)), "No Match", C&MATCH(A1,B:B, 0))

...and它不工作。

我遗漏了什么?如何将列号附加到返回的行号后才能达到预期效果?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-10-16 21:51:58

t.thielemans' answer之后,我的工作只是

代码语言:javascript
复制
=VLOOKUP(A1, B:C, 2, FALSE) 

它工作得很好,并且做了我想做的事情,除了它在不匹配时返回#N/A;因此它适用于已知该值确实存在于查找列中的情况。

编辑(基于t.thielemans的评论):

要避免不匹配的#N/A,请执行以下操作:

代码语言:javascript
复制
=IFERROR(VLOOKUP(A1, B:C, 2, FALSE), "No Match")
票数 39
EN

Stack Overflow用户

发布于 2012-10-16 21:11:19

使用不同的函数,如VLOOKUP:

代码语言:javascript
复制
=IF(ISERROR(MATCH(A1,B:B, 0)), "No Match", VLOOKUP(A1,B:C,2,FALSE))
票数 100
EN

Stack Overflow用户

发布于 2012-10-16 21:21:21

这个怎么样?

代码语言:javascript
复制
=IF(ISERROR(MATCH(A1,B:B, 0)), "No Match", INDIRECT(ADDRESS(MATCH(A1,B:B, 0), 3)))

末尾的"3“表示C栏。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12915215

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档