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

如何在Excel VBA中实现多条件匹配的MATCH公式?

Excel VBA实现多条件匹配行号问题

工作表中的多条件匹配方案

若需通过匹配多列值获取行号(多列组合作为唯一标识),可使用以下数组MATCH公式:

MATCH(1,(A:A=J1)*(B:B=K1)*(C:C=L1),0)

其中A、B、C为待匹配列,用于定位同时满足J1、K1、L1对应值的唯一行号。如需分步操作指南,可参考Christian Pedersen的说明。

VBA实现时的报错问题

上述工作表公式可正常运行,但在Excel VBA中编写对应逻辑时遇到问题。尝试了以下两种代码写法:

Dim var As Variant 
 
Sheets("MySheet").Select

'使用带双引号的"1234567"
'var = WorksheetFunction.Match(1, (Range("D:D") = "1234567") * (Range("F:F") = "Text Here"), 0)

'使用不带引号的1234567
var = WorksheetFunction.Match(1, (Range("D:D") = 1234567) * (Range("F:F") = "Text Here"), 0)

两种写法均触发相同错误:

运行时错误 '13':
类型不匹配

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 19:09:54