假设我在Excel中有以下数据表
Company Amount Text
Oracle $3,400 330 Richard ERP
Walmart $750 348 Mary ERP
Amazon $6,880 xxxx Loretta ERP
Rexel $865 0000 Mike ERP
Toyota $11,048 330 Richard ERP我想查看"Text“列中的每一项,根据以下范围的名称搜索该项:
Mary
Mike
Janine
Susan
Richard
Jerry
Loretta 并返回"Person“列中的名称(如果找到)。例如:
Company Amount Text Person
Oracle $3,400 330 Richard ERP Richard
Walmart $750 348 Mary ERP Mary
Amazon $6,880 xxxx Loretta ERP Loretta
Rexel $865 0000 Mike ERP Mike
Toyota $11,048 330 Richard ERP Richard我在Excel中尝试了以下几种方法:
=IF(N2="","",
IF(ISNUMBER(SEARCH(Sheet2!$A$1,N2)),Sheet2!$A$1,
IF(ISNUMBER(SEARCH(Sheet2!$A$2,N2)),Sheet2!$A$2,
IF(ISNUMBER(SEARCH(Sheet2!$A$3,N2)),Sheet2!$A$3,
....其中,$A$1:$A$133是我的范围,N2是"Text“列值;但是,这是很多嵌套代码,显然Excel对嵌套的IF语句的数量有限制。
是否有更简单的解决方案(数组)?VBA?)
谢谢!
发布于 2017-12-06 18:37:26
使用以下公式:
=IFERROR(INDEX(Sheet2!A:A,AGGREGATE(15,6,ROW(Sheet2!$A$1:INDEX(Sheet2!A:A,MATCH("zzz",Sheet2!A:A)))/(ISNUMBER(SEARCH(Sheet2!$A$1:INDEX(Sheet2!A:A,MATCH("zzz",Sheet2!A:A)),N2))),1)),"")

https://stackoverflow.com/questions/47681087
复制相似问题