Excel内联式字符串映射查询公式实现需求咨询
实现内联颜色映射的Excel公式方案
当然可以!这里给你两种实用的内联公式方案,完全不需要把映射数据存到其他单元格,直接在B1里就能搞定需求:
方案1:用XLOOKUP(适合Excel 365/2021及以上版本)
XLOOKUP的语法本身就很适合这种内联映射场景,写起来直观易懂:
=XLOOKUP(A1, {"orange","red","blue"}, {"balloon","bicycle","bird"}, "NOT FOUND")
- 第一个参数
A1是要匹配的输入值 - 第二个数组
{"orange","red","blue"}是你的映射键集合 - 第三个数组
{"balloon","bicycle","bird"}是对应的值集合(顺序要和键完全对应) - 最后一个参数
"NOT FOUND"就是当A1的值不在映射里时返回的内容
方案2:用VLOOKUP+IFERROR(兼容所有Excel版本)
如果你的Excel版本比较旧,没有XLOOKUP功能,用VLOOKUP配合IFERROR也能实现:
=IFERROR(VLOOKUP(A1, {"orange","balloon";"red","bicycle";"blue","bird"}, 2, FALSE), "NOT FOUND")
- 这里用了一个二维数组
{"orange","balloon";"red","bicycle";"blue","bird"}作为虚拟的查找表,分号;用来分隔不同行,逗号,分隔同一行的列 VLOOKUP会在这个虚拟表的第一列查找A1的值,找到后返回第二列的对应内容IFERROR用来捕获查找失败的错误,返回我们需要的"NOT FOUND"
小提示:如果你的Excel区域设置是欧洲格式(用分号作为参数分隔符),需要把公式里的逗号换成分号,同时把二维数组里的分号换成反斜杠\,比如:
=IFERROR(VLOOKUP(A1; {"orange"\,"balloon";"red"\,"bicycle";"blue"\,"bird"}; 2; FALSE); "NOT FOUND")
内容的提问来源于stack exchange,提问作者Suraj
相关产品推荐
相关产品推荐

