编写Excel公式:检查单元格文本含指定词汇并返回对应映射值
Excel B列匹配公式解决方案
可以使用以下几种公式实现需求:
方法1:INDEX+MATCH数组公式(适用于旧版Excel)
在B1单元格输入以下公式,按Ctrl+Shift+Enter确认(数组公式),然后下拉填充:
=IF(A1="","",INDEX(D$1:D$4,MATCH(TRUE,ISNUMBER(SEARCH(C$1:C$4,A1)),0)))
方法2:XLOOKUP函数(适用于Excel 365/2021及以上版本)
如果你的Excel支持XLOOKUP,可使用更简洁的公式,无需按组合键:
=IF(A1="","",XLOOKUP(TRUE,ISNUMBER(SEARCH(C$1:C$4,A1)),D$1:D$4,""))
公式说明
SEARCH(C$1:C$4,A1):检测A列对应单元格文本是否包含C1:C4中的词汇,返回匹配位置或错误值ISNUMBER(...):将上述结果转换为布尔值(匹配为TRUE,不匹配为FALSE)MATCH(TRUE,...):定位第一个匹配项的行号,对应C列中符合条件的词汇位置INDEX(D$1:D$4,...):根据行号从D列返回对应的映射值IF(A1="","",...):当A列单元格为空时,B列返回空白
示例验证
结合你提供的测试数据:
- A1“走2步”包含C2的“走”,返回D2的“M”
- A2“左转”包含C3的“转”,返回D3的“T”
- A3“跳栅栏”包含C1的“跳”,返回D1的“J”
- A5“转身”包含C3的“转”,返回D3的“T”
内容的提问来源于stack exchange,提问作者Andrzej Jasienski
相关产品推荐
相关产品推荐

