在工作表 2 中,如果工作表 2 中单元格的文本包含特定单词,我想使用工作表 1 中某个单元格的值。我该怎么做?
如果(工作表 2 中的单元格 C5 中的文本包含“VVV”,则输入工作表 1 中的单元格 D16 中的值)或如果(工作表 2 中的单元格 C5 中的文本包含“WWW”,则输入工作表 1 中的单元格 G16 中的值)或如果(工作表 2 中的单元格 C5 中的文本包含“XXX”,则输入工作表 1 中的单元格 J16 中的值)或如果(工作表 2 中的单元格 C5 中的文本包含“YYY”,则输入工作表 1 中的单元格 M16 中的值)或如果(工作表 2 中的单元格 C5 中的文本包含“ZZZ”,则输入工作表 1 中的单元格 P16 中的值)
为了测试第一个值,我使用了以下公式,它有效:
=IF(ISNUMBER(SEARCH("Multi",C5)),'Pricing Calculator'!D16)
但是,当我添加第二个值时,公式不起作用:
=IF(ISNUMBER(SEARCH("Multi",C6)),'Pricing Calculator'!D16)OR IF(ISNUMBER(SEARCH("Vegaflor",C6)),'Pricing Calculator'!G16)
我究竟做错了什么?
答案1
您想嵌套 IFS 而不是使用 OR:
=IF(ISNUMBER(SEARCH("Multi",C5)),'Pricing Calculator'!D16,IF(ISNUMBER(SEARCH("Vegaflor",C5)),'Pricing Calculator'!G16,...))
继续在该...
位置添加嵌套的 if。
我们还可以使用 INDEX/AGGREGATE 简化公式:
=INDEX('Pricing Calculator'!16:16,,aggregate(15,7,((ROW(1:5)-1)*3+4)/(ISNUMBER(SEARCH({"VVV","WWW","XXX","YYY","ZZZ"},C5))),1))
"VVV","WWW","XXX","YYY","ZZZ"
用您想要查找的文本替换。
当 C5 为无时的处理方式:
嵌套 IF,最后一个 if 以'Pricing Calculator'!P16,"")
使用较短的版本只需将其包装在 IFERROR 中
=IFERROR(INDEX('Pricing Calculator'!16:16,,aggregate(15,7,((ROW(1:5)-1)*3+4)/(ISNUMBER(SEARCH({"VVV","WWW","XXX","YYY","ZZZ"},C5))),1)),"")