Excel中如何依据含关键词的有序A列重排对应无序列B?
Excel按A列关键词匹配重排B列的方法
问题场景
A列为有序关键词列表,B列为包含对应关键词的无序列目(带前缀标识),需将B列条目按A列顺序匹配排列。
方法1:XLOOKUP函数(Excel 365/2021及以上版本适用)
- 在空白列(如C列)的第一个数据单元格(C2)输入公式:
=XLOOKUP("*"&A2&"*", B:B, B:B, "") - 按回车后,下拉填充公式至所有行,C列将自动匹配出对应A列关键词的B列条目
- 选中C列数据,右键选择「复制」,再选中B列,右键选择「粘贴选项」→「值」,完成替换
方法2:INDEX+MATCH组合(全Excel版本兼容)
- 在C2单元格输入公式:
=INDEX(B:B, MATCH("*"&A2&"*", B:B, 0)) - 回车后下拉填充,得到匹配结果
- 复制C列值,粘贴为数值到B列即可完成重排
方法3:Power Query(适合大数量数据)
- 选中整个数据区域,点击「数据」选项卡 → 「从表格/区域」(将数据导入Power Query编辑器)
- 在编辑器中点击「添加列」→「自定义列」,输入公式:
=Table.SelectRows(源, each Text.Contains([B列], [A列]))[B列]{0} - 删除原有B列,将新添加的自定义列重命名为「B列」
- 点击「关闭并上载」,处理后的数据将替换原表格或生成新表
内容的提问来源于stack exchange,提问作者Jeremy Teng
相关产品推荐
相关产品推荐

