如何使用匹配函数将工作表中的两个值与另一个工作表匹配并获得结果?

问题描述 投票:0回答:1

我在表单“SheetS”中有两个值

希达:

Column A      Column B
Apple         10.5

我希望这两个值与工作表“Sheet”相匹配,并从C列“Done”中得到答案

SheetB:

Column A   Column B   Column C
Apple      10         Undone
Apple      10.5       Done

使用匹配功能我试过

mav = Evaluate("INDEX(SheetB!$C$1:$C$5,MATCH(A1 & B1,SheetB!$A$1:$A$5&SheetB!$B$1:$B$5,0))")

Msgbox mav

我收到:

错误2042

请帮帮我。这是一个例子。一旦得到解决方案,我想在我的代码中使用这个公式。提前致谢。

当我用下面的相同表格引用值时,它正在工作。

mav = Evaluate("INDEX($C$1:$C$5,MATCH(A1 & B1,$A$1:$A$5&$B$1:$B$5,0))")

当我将它推荐给不同的纸张时,它不起作用。

mav = Evaluate("INDEX(SheetB!$C$1:$C$5,MATCH(A1 & B1,SheetB!$A$1:$A$5&SheetB!$B$1:$B$5,0))")
excel vba
1个回答
0
投票

你错过了=角色:

mav = Evaluate("=INDEX(SheetB!$C$1:$C$5,MATCH(A1 & B1,SheetB!$A$1:$A$5&SheetB!$B$1:$B$5,0))")

除了错误2042等于#N/A所以也许你做了一个糟糕的工作表参考。使用正确的引用,代码工作正常,请参阅下文:

enter image description here

enter image description here

enter image description here

还有什么值得注意的;这实际上是一个数组公式,但在VBA中你只需要公式的字符串值:)

© www.soinside.com 2019 - 2024. All rights reserved.