gpt4 book ai didi

Excel VBA Vlookup - 无法获取 Vlookup 属性

转载 作者:行者123 更新时间:2023-12-02 10:31:04 27 4
gpt4 key购买 nike

我有以下脚本,但收到 VLOOKUP 错误:

Dim DataRange, LookupRange As Range
Dim Data, Test As Variant

Set DataRange = Sheets("sheet").Range("A1:K12000")
Set LookupRange = sheets("sheet2").Range("A1:C50")
Data = DataRange.Value

For i = LBound(Data, 1) To UBound(Data,1)
ReDim Preserve Test(1 To 3, 1 To i)
test(1, i) = Application.WorksheetFunction.VLookup(Data(i, 4), LookupRange, 3, 0)
'Other stuff works fine
Next i

不幸的是,我收到错误消息:

"Unable to get the VLookup property of the WorksheetFunction class"

这很奇怪,因为所有变量和范围在监视模式下看起来都很好。查找也是按字母顺序...知道发生了什么吗?

最佳答案

这可能意味着很多事情。这可能只是意味着在 LookupRange 中找不到您的 Data(i, 4) 值。

Run-time error '1004':

Unable to get the VLookup property of the WorksheetFunction class

相当于从=vlookup("A",A1:B3,2,false)获取#N/A

在行上设置断点

test(i) = Application.WorksheetFunction.VLookup(Data(i, 4), LookupRange, 3, 0)

并在 Data(i, 4)i 上设置监视。查看 Data(i, 4) 中的值是否存在于您的查找范围内。查看 i 是否大于 1,是否正确运行了循环的一些迭代。

作为旁注,您的代码无论如何都不会运行,因为 Test 是一个空变体而不是数组。你需要一行像

ReDim Test(LBound(Data, 1) To UBound(Data, 1))

在 for 循环之前使其工作。

阅读错误处理 here 。您需要它才能从 VBA 正确处理 VLOOKUP。

关于Excel VBA Vlookup - 无法获取 Vlookup 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18471266/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com