You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

谷歌表格中用VLOOKUP匹配TRUE值自动为银行交易分类

解决银行交易自动分类的公式方案

针对你的需求,我们可以用INDEX+MATCH组合实现自动匹配类别,以下是对应Bank #1和Bank #2的E列公式:

Bank #1 支出表E列公式

=IFERROR(INDEX(REGEX!$L$2:$AC$2, MATCH(TRUE, INDEX(REGEX!$L$3:$AC$1000, MATCH($C8, REGEX!$K$3:$K$1000, 0), 0), 0)), "")

公式逻辑:

  1. MATCH($C8, REGEX!$K$3:$K$1000, 0):定位REGEX表中与当前交易描述(C列)匹配的行
  2. INDEX(REGEX!$L$3:$AC$1000, [上一步的行号], 0):提取该行所有类别的匹配结果(TRUE/FALSE数组)
  3. MATCH(TRUE, [上一步的数组], 0):找到第一个匹配成功(TRUE)的类别列序号
  4. INDEX(REGEX!$L$2:$AC$2, [上一步的列序号]):取出对应列的类别名称
  5. IFERROR(..., ""):无匹配结果时返回空值

Bank #2 支出表E列公式

=IFERROR(INDEX(REGEX!$AE$2:$AO$2, MATCH(TRUE, INDEX(REGEX!$AE$3:$AO$1000, MATCH($C8, REGEX!$AD$3:$AD$1000, 0), 0), 0)), "")

公式逻辑:

和Bank #1的逻辑一致,只是对应REGEX表的区域换成了Bank #2的规则列(AD列是交易描述,AE:AO是类别判断区域)

替代简化方案(使用FILTER+TEXTJOIN)

如果更倾向简洁写法,也可以用以下公式,效果完全一致:

Bank #1 简化公式

=IFERROR(TEXTJOIN("", TRUE, FILTER(REGEX!$L$2:$AC$2, INDEX(REGEX!$L$3:$AC$1000, MATCH($C8, REGEX!$K$3:$K$1000, 0), 0))), "")

Bank #2 简化公式

=IFERROR(TEXTJOIN("", TRUE, FILTER(REGEX!$AE$2:$AO$2, INDEX(REGEX!$AE$3:$AO$1000, MATCH($C8, REGEX!$AD$3:$AD$1000, 0), 0))), "")

使用方法

将对应公式复制到Bank #1或Bank #2支出表的E列首行(比如E3),然后下拉填充即可自动为所有交易匹配类别,无匹配项会自动留空。

内容的提问来源于stack exchange,提问作者Viananike

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 11:46:01