Google Sheets中Filter+Match匹配发票号问题求助
解决方案
自动匹配公式(适配1000+行)
在Sheet1的C2单元格输入以下公式,即可自动将Sheet2的发票号匹配到对应行:
=ARRAYFORMULA(IF(A2:A="", "", INDEX(Sheet2!B:B, MATCH(TRUE, ISNUMBER(SEARCH(Sheet2!A:A, A2:A)), 0))))
公式说明
ARRAYFORMULA:自动将公式应用到整列,无需手动下拉填充ISNUMBER(SEARCH(Sheet2!A:A, A2:A)):实现模糊匹配,判断Sheet2的交易描述是否是Sheet1对应行交易描述的子字符串,无需清理原始描述内容INDEX+MATCH:根据匹配成功的位置,提取Sheet2中对应的发票号IF(A2:A="", "", ...):空行自动显示空白,避免出现错误值
替代方案(XLOOKUP版本)
若习惯使用XLOOKUP函数,可替换为以下公式:
=ARRAYFORMULA(IF(A2:A="", "", XLOOKUP(TRUE, ISNUMBER(SEARCH(Sheet2!$A$2:$A, A2:A)), Sheet2!$B$2:$B, "")))
操作步骤
- 清空Sheet1中C列的现有内容
- 在C2单元格粘贴上述任意公式,按回车即可完成整列匹配
内容的提问来源于stack exchange,提问作者Ron -
相关产品推荐
相关产品推荐

