【发布时间】:2015-11-05 02:01:41
【问题描述】:
当我搜索某些字符串值而不是其他值时,VLookup 会引发错误:
运行时错误“1004”:无法获取工作表函数类的 VLookup 属性
显然,此错误表明没有找到任何值,但在我看来,值匹配!
这是隐藏字符或空格或我看不到的东西的结果吗?
如何确保一个页面上的值实际上与另一个页面上的值相同?
另外,我想也许我没有在我认为我正在搜索的地方搜索,这可以解释为什么我找不到某些值。作为测试,我更改了列中的返回值,并且更改正确返回。然后我更改了应该引发错误但没有引发错误的查找值。相反,它返回了一个不同的值。我搜索了不存在的“United States”,而是返回了“United Kingdom”的值。
【问题讨论】:
-
在没有
worksheetFunction的情况下尝试你的vlookup 只需Application.Vlookup... -
您要查找的值是数字还是文本?它们的格式是数字还是文本?
-
在您的数据集中使用 clean 函数和 trim 函数
=Trim(Clean(A1))这应该会删除任何不需要的字符。 -
@scott - 使用 worksheetFunction 和 Application 表单有什么区别?此外,当我尝试只取出代码的 worksheetFunction 部分时,我收到类型不匹配。
-
@DavidZemens 你是对的,最好有一个解释以供将来参考。在假设这是问题之前,我知道我想查看代码。 :) 但在最后一次编辑时,OP 可能已经解决了这个问题。